```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "Visa Direct Connect",
    "description": "Visa Direct Connect provides simple, fast and streamlined access to our money movement solutions",
    "version": "1"
  },
  "servers": [
    {
      "url": "https://sandbox.api.visa.com",
      "description": "Sandbox server"
    }
  ],
  "security": [],
  "tags": [
    {
      "name": "Callback API-Initial Version - Deprecated",
      "description": "Callback API"
    },
    {
      "name": "Eligibility",
      "description": "Eligibility API will enable Visa Direct Connect clients to check eligibility of recipient payment instrument(Cards). It will provide the details if the card can be used for payout/payin, cardis fast funds enabled and what other non-visa networks are enabled."
    },
    {
      "name": "Exception Management",
      "description": "This API allows an Originating Entity to cancel, reverse or adjust the original transaction for a Card, Accounts or wallet payout/payin transaction. This API is used by Originator after the original payout/payin transaction is successfully received by Visa Direct Connect."
    },
    {
      "name": "Get Requirements",
      "description": "Get Requirements is the API bundle that will enable originators to know what API attributes are needed based on regional , regulatory and route based needs for an accounts, wallet or cards transaction"
    },
    {
      "name": "Notification API",
      "description": "Notification API "
    },
    {
      "name": "Payin",
      "description": "Payin API will enable originators to pull money from a card."
    },
    {
      "name": "Payout",
      "description": "Send Payout to cards/account or wallet recipient"
    },
    {
      "name": "Transaction Management",
      "description": "Originators can get the transaction details after the cards/account/wallet payout/payin transactions are received or transactions went through some post transaction operations like payment delivered, cancelled, rejected or adjusted."
    },
    {
      "name": "Transactional API - Initial Version - Deprecated",
      "description": "Transactional API"
    },
    {
      "name": "Validate",
      "description": "This API allows an Originating Entity to validate the payload for a Accounts or wallet payout before sending in the actual payout request for processing, thus ensuring greater probability of success and allowing for a more seamless transaction flow. The ISO field names provided are provided by Visa for guidance only. Clients are advised to check the ISO field mappings themselves."
    },
    {
      "name": "Verify",
      "description": "Originator is enabled to verify different payment instrument like cards, account and wallet where money is going to be pushed Or pulled for cards."
    }
  ],
  "paths": {
    "/visadirect-connect/v1/wallets/payout/validate": {
      "post": {
        "tags": [
          "Validate"
        ],
        "summary": "Validate Wallet payout",
        "description": "Enables client to validate pre-transaction payout to wallet data",
        "operationId": "ValidateWalletPayout",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ValidatePayoutWalletOnlyRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Business validation result - if the Payout request is valid and can be processed if sent as a payout transaction",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidatePayoutResponse"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse"
          },
          "429": {
            "$ref": "#/components/responses/429ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1wallets~1payout~1validate/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/accounts/payout/validate": {
      "post": {
        "tags": [
          "Validate"
        ],
        "summary": "Validate Account Payout",
        "description": "Enables client to validate pre-transaction payout to account data",
        "operationId": "ValidateAccountPayout",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ValidatePayoutAccountOnlyRequest-1"
              },
              "examples": {
                "VDA Invalid Scenario": {
                  "summary": "VDA Invalid Scenario",
                  "value": {
                    "recipientDetail": {
                      "lastName": "smith",
                      "firstName": "Jessica",
                      "bank": {
                        "bankCode": "800554",
                        "bankCodeType": "SORT_CODE",
                        "accountNumberType": "DEFAULT",
                        "accountName": "Money Market",
                        "countryCode": "GBR",
                        "bankName": "Barclays",
                        "accountNumber": "6970094",
                        "currencyCode": "GBP"
                      },
                      "address": {
                        "country": "GBR",
                        "city": "London",
                        "postalCode": "675456",
                        "addressLine1": "123 Main St",
                        "state": "CF"
                      },
                      "type": "I"
                    },
                    "senderDetail": {
                      "address": {
                        "country": "USA",
                        "city": "Washington",
                        "addressLine1": "addressline1"
                      },
                      "name": "Ben",
                      "type": "C",
                      "senderAccountNumber": "senderAccountNumber"
                    },
                    "payoutMethod": "B",
                    "transactionDetail": {
                      "initiatingPartyId": 1002,
                      "businessApplicationId": "FD",
                      "statementNarrative": "advancepayment",
                      "transactionAmount": 1.5,
                      "transactionCurrencyCode": "GBP",
                      "settlementCurrencyCode": "GBP",
                      "senderSourceOfFunds": "01"
                    }
                  }
                },
                "VDA Valid Scenario": {
                  "summary": "VDA Valid Scenario",
                  "value": {
                    "recipientDetail": {
                      "lastName": "smith",
                      "firstName": "Jessica",
                      "bank": {
                        "bankCode": "800554",
                        "bankCodeType": "SORT_CODE",
                        "accountNumberType": "DEFAULT",
                        "accountName": "Money Market",
                        "countryCode": "GBR",
                        "bankName": "Barclays",
                        "accountNumber": "6970093",
                        "currencyCode": "GBP"
                      },
                      "address": {
                        "country": "GBR",
                        "city": "London",
                        "postalCode": "675456",
                        "addressLine1": "123 Main St",
                        "state": "CF"
                      },
                      "type": "I"
                    },
                    "senderDetail": {
                      "address": {
                        "country": "USA",
                        "city": "Washington",
                        "addressLine1": "addressline1"
                      },
                      "name": "Ben",
                      "type": "C",
                      "senderAccountNumber": "senderAccountNumber"
                    },
                    "payoutMethod": "B",
                    "transactionDetail": {
                      "initiatingPartyId": 1002,
                      "businessApplicationId": "FD",
                      "statementNarrative": "advancepayment",
                      "transactionAmount": 1.5,
                      "transactionCurrencyCode": "GBP",
                      "settlementCurrencyCode": "GBP",
                      "senderSourceOfFunds": "01"
                    }
                  }
                },
                "VDA Valid with Network Request & Response": {
                  "summary": "VDA Valid with Network Request & Response",
                  "value": {
                    "accountVerificationRequired": "true",
                    "clientVerificationReference": "2363425345211655",
                    "recipientDetail": {
                      "lastName": "ZHANG",
                      "firstName": "Man Ning",
                      "bank": {
                        "bankCode": "026009593",
                        "bankCodeType": "SORT_CODE",
                        "accountNumberType": "DEFAULT",
                        "accountName": "Beijing Apple and Orange Company",
                        "countryCode": "USA",
                        "accountType": "1",
                        "bankName": "Bank of America",
                        "accountNumber": "321872160000",
                        "BIC": "ABOCCNBJ",
                        "currencyCode": "USD"
                      },
                      "cityOfBirth": "optional",
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "91111111ABCXYZ1234",
                          "idIssueCountry": "GBR"
                        }
                      ],
                      "address": {
                        "country": "GBR",
                        "city": "London",
                        "postalCode": "675456",
                        "addressLine1": "555 Sunset Blvd",
                        "addressLine2": "Lane 1",
                        "state": "CF"
                      },
                      "contactEmail": "jessica@visa.com",
                      "countryOfBirth": "GBR",
                      "dateOfBirth": "2001-01-01",
                      "type": "I"
                    },
                    "senderDetail": {
                      "lastName": "Sender",
                      "firstName": "Ben",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "SenderCity",
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "20101605421",
                          "idIssueCountry": "USA"
                        }
                      ],
                      "address": {
                        "country": "USA",
                        "city": "Washington",
                        "postalCode": "111222",
                        "addressLine1": "addressline5",
                        "addressLine2": "addressline2",
                        "state": "CF"
                      },
                      "contactEmail": "abc@gmail.com",
                      "countryOfBirth": "USA",
                      "contactNumber": "+2345678909",
                      "dateOfBirth": "1999-09-09",
                      "type": "I",
                      "senderAccountNumber": "'6212345678987654321"
                    },
                    "payoutMethod": "B",
                    "transactionDetail": {
                      "initiatingPartyId": "10084236112",
                      "businessApplicationId": "AA",
                      "statementNarrative": "advancepayment",
                      "transactionAmount": "101.12",
                      "transactionCurrencyCode": "CNY",
                      "settlementCurrencyCode": "CNY",
                      "endToEndId": "123456",
                      "senderSourceOfFunds": "01",
                      "senderBeneficiaryRelationship": "friend"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Business validation result - if the Payout request is valid and can be processed if sent as a payout transaction",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidateAccountPayoutResponse-1"
                },
                "examples": {
                  "VDA Invalid Scenario": {
                    "summary": "VDA Invalid Scenario",
                    "value": {
                      "validationResultCode": "INVALID",
                      "validationDetails": [
                        {
                          "reason": "string",
                          "details": [
                            {
                              "code": "string",
                              "location": "string",
                              "message": "string"
                            }
                          ],
                          "message": "string",
                          "status": 400
                        }
                      ]
                    }
                  },
                  "VDA Valid Scenario": {
                    "summary": "VDA Valid Scenario",
                    "value": {
                      "validationResultCode": "VALID"
                    }
                  },
                  "VDA Valid with Network Request & Response": {
                    "summary": "VDA Valid with Network Request & Response",
                    "value": {
                      "clientVerificationReference": "2363425345211655",
                      "expectedPostingDate": "2026-03-19",
                      "validationResultCode": "VALID_WITH_NETWORK",
                      "verificationId": "APLQDM4YYDEO",
                      "nameMatch": "NO_MATCH"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-1"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-1"
          },
          "429": {
            "$ref": "#/components/responses/429ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1accounts~1payout~1validate/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/cards/transaction": {
      "get": {
        "tags": [
          "Transaction Management"
        ],
        "summary": "Query Cards Payout or Payin",
        "description": "Retrieve transaction details by client reference ID or transaction identifier",
        "operationId": "getTransactionDetails",
        "parameters": [
          {
            "name": "acquiringBin",
            "in": "query",
            "description": "Bank Identification Number of the acquirer",
            "required": true,
            "explode": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "initiatingPartyId",
            "in": "query",
            "description": "A unique identifier assigned by the initiating party for the API consumer",
            "required": false,
            "explode": true,
            "schema": {
              "type": "integer",
              "format": "int64",
              "example": 987654321
            }
          },
          {
            "name": "idType",
            "in": "query",
            "description": "The type of identifier being used to query the transaction. It can have either of the two values CLIENT_REFERENCE_ID or TRANSACTION_IDENTIFIER.",
            "required": true,
            "explode": true,
            "schema": {
              "type": "string"
            },
            "example": "CLIENT_REFERENCE_ID"
          },
          {
            "name": "id",
            "in": "query",
            "description": "The value of the identifier specified by idType",
            "required": true,
            "explode": true,
            "schema": {
              "type": "string",
              "example": "CLIENT-REF-20250417-123456"
            }
          },
          {
            "name": "additionalResponse",
            "in": "query",
            "description": "Comma separated list of additional fields requestor would like in response e.g. responseCode, prepaidBalance, merchantVerificationValue, integratedCircuitCardData, transactionLinkIdentifier, persistentFX, settlementInfo, responseReasonCode, settlementFlags, cpsAuthorizationCharacteristicsIndicator, reimbursementAttribute, addressVerificationResults, riskAssessmentResults, memberComments, chipCardData, senderIdentificationNumberIndividual, customerReference, masterCardElectronicCommerceIndicators",
            "required": false,
            "explode": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful query response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QueryResponseData"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponses-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "404": {
            "description": "Transaction not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseWithKey-1"
                },
                "example": {
                  "errorResponse": {
                    "reason": "Not Found",
                    "status": 404,
                    "details": [
                      {
                        "code": "TRANSACTION_NOT_FOUND",
                        "message": "No transaction found for the given id and idType",
                        "location": "query"
                      }
                    ],
                    "message": "The requested transaction could not be found with the provided criteria"
                  }
                }
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1cards~1transaction/get",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/accounts/payout": {
      "get": {
        "tags": [
          "Transaction Management"
        ],
        "summary": "Query Account Payout",
        "description": "Enables client to query payout to account transaction.",
        "operationId": "QueryAccountPayout",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/PayoutIdentifier"
            }
          },
          {
            "name": "idType",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/TransactionIdType"
            }
          },
          {
            "name": "initiatingPartyId",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/InitiatingPartyId"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/QueryAccountResponse-2"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-1"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-1"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1accounts~1payout/get",
            "default": false
          }
        ],
        "x-hideTryIt": true
      },
      "post": {
        "tags": [
          "Payout"
        ],
        "summary": "Send Payout To Account",
        "description": "SendPayout Request to account",
        "operationId": "SendPayoutToAccount",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AccountPayoutOnlyRequest-1"
              },
              "examples": {
                "Send payout to Account": {
                  "summary": "Send payout to Account",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Bharath",
                      "firstName": "Anand",
                      "contactNumberType": "MOBILE",
                      "bank": {
                        "bankCode": "800554",
                        "bankCodeType": "SORT_CODE",
                        "accountNumberType": "DEFAULT",
                        "accountName": "Money Market",
                        "countryCode": "GBR",
                        "bankName": "Barclays",
                        "accountNumber": "6970093",
                        "currencyCode": "GBP"
                      },
                      "cityOfBirth": "London",
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "P128766Z",
                          "idIssueCountry": "GBR"
                        }
                      ],
                      "address": {
                        "country": "GBR",
                        "city": "London",
                        "postalCode": "SW1A 2AA",
                        "addressLine1": "10 Downing St",
                        "addressLine2": "2124 HEH"
                      },
                      "contactEmail": "testmailid2024@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1991-05-27",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "4304630005267011",
                      "lastName": "Russel",
                      "firstName": "Saha",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "address": {
                        "country": "GBR",
                        "city": "Manchester",
                        "postalCode": "20500",
                        "addressLine1": "1600 Pennsylvania Ave",
                        "addressLine2": "Apt 4B"
                      },
                      "contactEmail": "testmail389abc@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1988-02-08",
                      "type": "I"
                    },
                    "payoutMethod": "B",
                    "transactionDetail": {
                      "initiatingPartyId": "1002",
                      "businessApplicationId": "PP",
                      "transactionAmount": "1557",
                      "transactionCurrencyCode": "GBP",
                      "settlementCurrencyCode": "GBP",
                      "endToEndId": "330016463808",
                      "clientReferenceId": "32917133186",
                      "senderSourceOfFunds": "01",
                      "payoutSpeed": "STANDARD"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Payout response body",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/AccountPayoutResponse-1"
                    }
                  ]
                },
                "examples": {
                  "Send payout to Account": {
                    "summary": "Send payout to Account",
                    "value": {
                      "transactionDetail": {
                        "transactionDateTime": "2022-11-16T10:36:07.000Z",
                        "settlementCurrencyCode": "GBP",
                        "payoutId": "172167337682452",
                        "endToEndId": "330016463808",
                        "clientReferenceId": "32917133186",
                        "payoutSpeed": "STANDARD",
                        "initiatingPartyId": 1002,
                        "fxConversionRate": 1,
                        "expectedPostingDate": "2022-11-16",
                        "destinationCurrencyCode": "GBP",
                        "transactionAmount": 1557,
                        "transactionCurrencyCode": "GBP",
                        "settlementAmount": 1557,
                        "status": "PAYMENT_RECEIVED",
                        "destinationAmount": 1557
                      }
                    }
                  }
                }
              }
            }
          },
          "202": {
            "description": "Transaction is accepted",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/202AccountPayoutCreatedResponse"
                    }
                  ]
                },
                "examples": {
                  "Send payout to Account": {
                    "summary": "Send payout to Account",
                    "value": {
                      "transactionDetail": {
                        "transactionDateTime": "2022-11-16T10:36:07.000Z",
                        "settlementCurrencyCode": "GBP",
                        "payoutId": "172167337682452",
                        "endToEndId": "330016463808",
                        "clientReferenceId": "32917133186",
                        "payoutSpeed": "STANDARD",
                        "initiatingPartyId": 1002,
                        "fxConversionRate": 1,
                        "expectedPostingDate": "2022-11-16",
                        "destinationCurrencyCode": "GBP",
                        "transactionAmount": 1557,
                        "transactionCurrencyCode": "GBP",
                        "settlementAmount": 1557,
                        "status": "PAYMENT_RECEIVED",
                        "destinationAmount": 1557
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponses"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-1"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1accounts~1payout/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/wallets/payout": {
      "get": {
        "tags": [
          "Transaction Management"
        ],
        "summary": "Query Wallet Payout",
        "description": "Get details of transaction by querying identifier of wallet payout",
        "operationId": "QueryWalletPayout",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/PayoutIdentifier"
            }
          },
          {
            "name": "idType",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/TransactionIdType"
            }
          },
          {
            "name": "initiatingPartyId",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/InitiatingPartyId"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/QueryWalletResponse-3"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-1"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-1"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1wallets~1payout/get",
            "default": false
          }
        ],
        "x-hideTryIt": true
      },
      "post": {
        "tags": [
          "Payout"
        ],
        "summary": "Send Payout To Wallet",
        "description": "SendPayout Request to wallet",
        "operationId": "SendPayoutToWallet",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WalletPayoutOnlyRequest-1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Payout response body",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/AccountPayoutResponse-1"
                    }
                  ]
                }
              }
            }
          },
          "202": {
            "description": "Transaction is accepted",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/202AccountPayoutCreatedResponse"
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponses"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-1"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1wallets~1payout/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/cards/payout": {
      "post": {
        "tags": [
          "Payout"
        ],
        "summary": "Send Payout to Cards",
        "description": "Credits funds to a recipient's Visa account using Original Credit Transaction (OCT)",
        "operationId": "createOCTTransaction",
        "requestBody": {
          "$ref": "#/components/requestBodies/OCTRequest-9"
        },
        "responses": {
          "200": {
            "$ref": "#/components/responses/OCTResponse-7"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponses-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1cards~1payout/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/accounts/payout/cancel": {
      "delete": {
        "tags": [
          "Exception Management"
        ],
        "summary": "Cancel Account Payout",
        "description": "The Cancel API is applicable only for Send to Account Payouts. Visa can accept a cancellation request in some status, e.g. PAYMENT_RECEIVED.",
        "operationId": "CancelAccountPayout",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/PayoutIdentifier"
            }
          },
          {
            "name": "idType",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/TransactionIdType"
            }
          },
          {
            "name": "initiatingPartyId",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/InitiatingPartyId"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/CancelPayoutResponse"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-6"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-6"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1accounts~1payout~1cancel/delete",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/cards/adjustment": {
      "post": {
        "tags": [
          "Exception Management"
        ],
        "summary": "Payouts or Payin Adjustment",
        "description": "adjustment of card payout or payin payments",
        "operationId": "cardAdjustment",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AdjustmentRequestData-5"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful adjustment response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdjustmentResponseData"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponses-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1cards~1adjustment/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/cards/payin/reversal": {
      "post": {
        "tags": [
          "Exception Management"
        ],
        "summary": "Payin reversal",
        "description": "Credit funds to sender's Visa account using Account Funding Transaction Reversal (AFTR)",
        "operationId": "createAFTRerversalTransaction",
        "requestBody": {
          "$ref": "#/components/requestBodies/AFTRRequest"
        },
        "responses": {
          "200": {
            "$ref": "#/components/responses/AFTRResponse-11"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponses-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1cards~1payin~1reversal/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/wallets/payout/cancel": {
      "delete": {
        "tags": [
          "Exception Management"
        ],
        "summary": "Cancel Wallet Payout",
        "description": "The Cancel API is applicable only for Send to Account Payouts. Visa can accept a cancellation request in some status, e.g. PAYMENT_RECEIVED.",
        "operationId": "CancelWalletPayout",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/PayoutIdentifier"
            }
          },
          {
            "name": "idType",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/TransactionIdType"
            }
          },
          {
            "name": "initiatingPartyId",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/InitiatingPartyId"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/CancelPayoutResponse"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-6"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-6"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1wallets~1payout~1cancel/delete",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/payouts/{id}": {
      "post": {
        "tags": [
          "Transactional API - Initial Version - Deprecated"
        ],
        "summary": "Request Exception",
        "description": "Update Payout Status to cancel/recall/reverse the transfer",
        "operationId": "updatePayoutStatus",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Payout Identifier, it is either a client_reference_id or a payout_id",
            "required": true,
            "explode": false,
            "schema": {
              "$ref": "#/components/schemas/PayoutIdentifier-1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePayoutStatusRequest-4"
              },
              "examples": {
                "Request Exception Wallet": {
                  "summary": "Request Exception Wallet",
                  "value": {
                    "initiatingPartyId": "1002",
                    "idType": "CLIENT_REFERENCE_ID",
                    "actionCode": "CANCEL",
                    "payoutMethod": "W"
                  }
                },
                "Request Exception Accounts": {
                  "summary": "Request Exception Accounts",
                  "value": {
                    "initiatingPartyId": "1002",
                    "idType": "CLIENT_REFERENCE_ID",
                    "actionCode": "CANCEL",
                    "payoutMethod": "B"
                  }
                },
                "Request Exception Cards Pull reversal": {
                  "summary": "Request Exception Cards Pull reversal",
                  "value": {
                    "initiatingPartyId": "1002",
                    "idType": "CLIENT_REFERENCE_ID",
                    "actionCode": "REVERSAL",
                    "payoutMethod": "C"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Payout response body",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdatePayoutResponse-4"
                },
                "examples": {
                  "Request Exception Wallet": {
                    "summary": "Request Exception Wallet",
                    "value": {
                      "transactionDetail": {
                        "initiatingPartyId": 8092,
                        "payoutId": "281475041735425",
                        "clientReferenceId": "2998723427",
                        "status": "CANCELLED"
                      }
                    }
                  },
                  "Request Exception Accounts": {
                    "summary": "Request Exception Accounts",
                    "value": {
                      "transactionDetail": {
                        "initiatingPartyId": 8092,
                        "payoutId": "281475041735425",
                        "clientReferenceId": "2998723427",
                        "status": "CANCELLED"
                      }
                    }
                  },
                  "Request Exception Cards Pull reversal": {
                    "summary": "Request Exception Cards Pull reversal",
                    "value": {
                      "transactionDetail": {
                        "initiatingPartyId": 1002,
                        "transactionDateTime": "2024-07-22T19:32:40.000Z",
                        "networkResponses": [
                          {
                            "systemTraceAuditNumber": "420419",
                            "cardAcceptorId": "CA-IDCode-89",
                            "approvalCode": "23456M",
                            "acquirerCountryCode": "840",
                            "terminalId": "wnTOMUzL",
                            "acquiringBin": 445654,
                            "retrievalReferenceNumber": "420419029890",
                            "type": "PullFundsTransactionReversal",
                            "transactionAmount": 100.21,
                            "transactionCurrencyCode": "USD",
                            "networkId": 4,
                            "actionCode": "00",
                            "responseSource": "5"
                          }
                        ],
                        "payoutId": "844482451210168",
                        "clientReferenceId": "64433575113",
                        "status": "PAYMENT_RETURNED"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-3"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1payouts~1{id}/post",
            "default": false
          }
        ],
        "x-hideTryIt": true,
        "x-sortOrder": 1
      }
    },
    "/visadirect-connect/v1/payouts/accountBalance": {
      "get": {
        "tags": [
          "Transactional API - Initial Version - Deprecated"
        ],
        "summary": "Get Account Balance",
        "description": "The purpose of this API is to retrieve merchant's account currency balance.",
        "operationId": "GetAccountBalance",
        "parameters": [
          {
            "name": "initiatingPartyId",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/InitiatingPartyId"
            }
          },
          {
            "name": "currencyCode",
            "in": "query",
            "required": false,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/AlphaCurrencyCode"
            }
          },
          {
            "name": "payoutMethod",
            "in": "query",
            "required": false,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/PayoutMethodNotification"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/GetAccountBalanceResponse-2"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-3"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1payouts~1accountBalance/get",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/payouts": {
      "get": {
        "tags": [
          "Transactional API - Initial Version - Deprecated"
        ],
        "summary": "Query Payout",
        "description": "Get details of transaction by querying identifier",
        "operationId": "QueryPayout",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/PayoutIdentifier-1"
            }
          },
          {
            "name": "idType",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/TransactionIdType-2"
            }
          },
          {
            "name": "initiatingPartyId",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/InitiatingPartyId"
            }
          },
          {
            "name": "payoutMethod",
            "in": "query",
            "description": "Required for Cards, Accounts, Wallets queries\n",
            "required": false,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/PayoutMethod-2"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/QueryResponse-15"
          },
          "400": {
            "$ref": "#/components/responses/Query400ErrorResponse"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1payouts/get",
            "default": false
          }
        ],
        "x-hideTryIt": true,
        "x-sortOrder": 2
      },
      "post": {
        "tags": [
          "Transactional API - Initial Version - Deprecated"
        ],
        "summary": "Send Payout",
        "description": "SendPayout Request",
        "operationId": "SendPayout",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendPayoutRequest-27"
              },
              "examples": {
                "Send Payout Accounts": {
                  "summary": "Send Payout Accounts",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Bharath",
                      "firstName": "Anand",
                      "contactNumberType": "MOBILE",
                      "bank": {
                        "bankCode": "800554",
                        "bankCodeType": "SORT_CODE",
                        "accountNumberType": "DEFAULT",
                        "accountName": "Money Market",
                        "countryCode": "GBR",
                        "bankName": "Barclays",
                        "accountNumber": "6970093",
                        "currencyCode": "GBP"
                      },
                      "cityOfBirth": "London",
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "P128766Z",
                          "idIssueCountry": "GBR"
                        }
                      ],
                      "address": {
                        "country": "GBR",
                        "city": "London",
                        "postalCode": "SW1A 2AA",
                        "addressLine1": "10 Downing St",
                        "addressLine2": "2124 HEH"
                      },
                      "contactEmail": "testmailid2024@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1991-05-27",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "4304630005267011",
                      "lastName": "Russel",
                      "firstName": "Saha",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "address": {
                        "country": "GBR",
                        "city": "Manchester",
                        "postalCode": "20500",
                        "addressLine1": "1600 Pennsylvania Ave",
                        "addressLine2": "Apt 4B"
                      },
                      "contactEmail": "testmail389abc@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1988-02-08",
                      "type": "I"
                    },
                    "payoutMethod": "B",
                    "transactionDetail": {
                      "initiatingPartyId": "1002",
                      "businessApplicationId": "PP",
                      "transactionAmount": "1557",
                      "transactionCurrencyCode": "GBP",
                      "settlementCurrencyCode": "GBP",
                      "endToEndId": "330016463808",
                      "clientReferenceId": "32917133186",
                      "senderSourceOfFunds": "01",
                      "payoutSpeed": "STANDARD"
                    }
                  }
                },
                "Send Payout Cards Push": {
                  "summary": "Send Payout Cards Push",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Alba",
                      "firstName": "Jessica",
                      "address": {
                        "country": "USA",
                        "city": "Florida",
                        "postalCode": "33634",
                        "addressLine1": "2 Marcus Clarke St,"
                      },
                      "dateOfBirth": "2001-01-01",
                      "type": "I",
                      "card": {
                        "accountType": "00",
                        "accountNumber": "4957030420210454",
                        "expirationDate": "2027-03"
                      }
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "A42434234S324234",
                      "lastName": "Smith",
                      "firstName": "John",
                      "address": {
                        "country": "USA",
                        "city": "Camden",
                        "postalCode": "15205",
                        "addressLine1": "4616 Stuart Street",
                        "addressLine2": "Lane 1",
                        "state": "NJ"
                      },
                      "dateOfBirth": "1989-04-22",
                      "type": "I"
                    },
                    "payoutMethod": "C",
                    "transactionDetail": {
                      "surcharge": "1",
                      "initiatingPartyId": "1002",
                      "localTransactionDateTime": "2024-07-22T15:26:12",
                      "businessApplicationId": "PP",
                      "purposeOfPayment": "Remittance",
                      "transactionAmount": 100.21,
                      "transactionCurrencyCode": "USD",
                      "clientReferenceId": "98148028712"
                    }
                  }
                },
                "Send Payout Wallet 400 Request": {
                  "summary": "Send Payout Wallet 400 Request",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Bharath",
                      "firstName": "Anand",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "P128766Z",
                          "idIssueCountry": "UGA"
                        }
                      ],
                      "wallet": {
                        "countryCode": "UGA",
                        "accountIdentifier": "+8801888513100",
                        "accountIdentifierType": "PHONENUMBER",
                        "currencyCode": "UGX",
                        "operatorName": "ALIPAY"
                      },
                      "address": {
                        "country": "UGA",
                        "city": "KAMPALA",
                        "postalCode": "SW1A 2AA",
                        "addressLine1": "10 Downing St",
                        "addressLine2": "2124 HEH"
                      },
                      "contactEmail": "testmailid2024@visa.com",
                      "countryOfBirth": "UGA",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1991-05-27",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "4304630005267011",
                      "lastName": "Russel",
                      "firstName": "Saha",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "address": {
                        "country": "GBR",
                        "city": "Manchester",
                        "postalCode": "20500",
                        "addressLine1": "1600 Pennsylvania Ave",
                        "addressLine2": "Apt 4B"
                      },
                      "contactEmail": "testmail389abc@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1988-02-08",
                      "type": "I"
                    },
                    "payoutMethod": "W",
                    "transactionDetail": {
                      "initiatingPartyId": "1002",
                      "businessApplicationId": "PP",
                      "transactionAmount": "3613250",
                      "transactionCurrencyCode": "UGX",
                      "settlementCurrencyCode": "USD",
                      "endToEndId": "330016463808",
                      "clientReferenceId": "13501445172",
                      "senderSourceOfFunds": "01",
                      "payoutSpeed": "STANDARD"
                    }
                  }
                },
                "Send Payout Cards Pull 400 request": {
                  "summary": "Send Payout Cards Pull 400 request",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Alba",
                      "firstName": "Jessica",
                      "address": {
                        "country": "USA",
                        "city": "Florida",
                        "postalCode": "33634",
                        "addressLine1": "2 Marcus Clarke St,"
                      },
                      "dateOfBirth": "2001-01-01",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "A42434234S324234",
                      "lastName": "Smith",
                      "firstName": "John",
                      "address": {
                        "country": "USA",
                        "city": "Camden",
                        "postalCode": "15205",
                        "addressLine1": "4616 Stuart Street",
                        "addressLine2": "Lane 1",
                        "state": "NJ"
                      },
                      "dateOfBirth": "1989/04/22",
                      "type": "I",
                      "card": {
                        "accountType": "00",
                        "accountNumber": "4005520000011126",
                        "expirationDate": "2027-03"
                      }
                    },
                    "payoutMethod": "C",
                    "transactionDetail": {
                      "surcharge": "1",
                      "initiatingPartyId": "1002",
                      "localTransactionDateTime": "{{curDate}}T15:26:12",
                      "businessApplicationId": "PP",
                      "purposeOfPayment": "Remittance",
                      "transactionAmount": 100.21,
                      "transactionCurrencyCode": "USD",
                      "clientReferenceId": "6443357511333"
                    }
                  }
                },
                "Send Payout Cards 400 request": {
                  "summary": "Send Payout Cards 400 request",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Alba",
                      "firstName": "Jessica",
                      "address": {
                        "country": "USA",
                        "city": "Florida",
                        "postalCode": "33634",
                        "addressLine1": "2 Marcus Clarke St,"
                      },
                      "dateOfBirth": "2001-01-01",
                      "type": "I",
                      "card": {
                        "accountType": "00",
                        "accountNumber": "4957030420210454",
                        "expirationDate": "2027-03"
                      }
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "A42434234S324234",
                      "lastName": "Smith",
                      "firstName": "John",
                      "address": {
                        "country": "USA",
                        "city": "Camden",
                        "postalCode": "15205",
                        "addressLine1": "4616 Stuart Street",
                        "addressLine2": "Lane 1",
                        "state": "NJ"
                      },
                      "dateOfBirth": "1989-04-22",
                      "type": "I",
                      "card": {
                        "accountType": "00",
                        "accountNumber": "4957030420210454",
                        "expirationDate": "2027-03"
                      }
                    },
                    "payoutMethod": "C",
                    "transactionDetail": {
                      "surcharge": "1",
                      "initiatingPartyId": "1002",
                      "localTransactionDateTime": "{{curDate}}T15:26:12",
                      "businessApplicationId": "PP",
                      "purposeOfPayment": "Remittance",
                      "transactionAmount": 100.21,
                      "transactionCurrencyCode": "USD",
                      "clientReferenceId": "45645645645645"
                    }
                  }
                },
                "Send payout Accounts 400 Request": {
                  "summary": "Send payout Accounts 400 Request",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Bharath",
                      "firstName": "Anand",
                      "contactNumberType": "MOBILE",
                      "bank": {
                        "bankCode": "800554",
                        "bankCodeType": "SORT_CODE",
                        "accountNumberType": "DEFAULT",
                        "accountName": "Money Market",
                        "countryCode": "GBR",
                        "bankName": "Barclays",
                        "accountNumber": "6970093",
                        "currencyCode": "GBP"
                      },
                      "cityOfBirth": "London",
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "P128766Z",
                          "idIssueCountry": "GBR"
                        }
                      ],
                      "address": {
                        "country": "GBR",
                        "city": "London",
                        "postalCode": "SW1A 2AA",
                        "addressLine1": "10 Downing St",
                        "addressLine2": "2124 HEH"
                      },
                      "contactEmail": "testmailid2024@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1991-05-27",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "4304630005267011",
                      "lastName": "Russel",
                      "firstName": "Saha",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "address": {
                        "country": "GBR",
                        "city": "Manchester",
                        "postalCode": "20500",
                        "addressLine1": "1600 Pennsylvania Ave",
                        "addressLine2": "Apt 4B"
                      },
                      "contactEmail": "testmail389abc@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1988-02-08",
                      "type": "I"
                    },
                    "payoutMethod": "B",
                    "transactionDetail": {
                      "businessApplicationId": "PP",
                      "transactionAmount": "1557",
                      "transactionCurrencyCode": "GBP",
                      "settlementCurrencyCode": "GBP",
                      "endToEndId": "330016463808",
                      "clientReferenceId": "644335751133",
                      "senderSourceOfFunds": "01",
                      "payoutSpeed": "STANDARD"
                    }
                  }
                },
                "Send payout Cards Pull": {
                  "summary": "Send payout Cards Pull",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Alba",
                      "firstName": "Jessica",
                      "address": {
                        "country": "USA",
                        "city": "Florida",
                        "postalCode": "33634",
                        "addressLine1": "2 Marcus Clarke St,"
                      },
                      "dateOfBirth": "2001-01-01",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "A42434234S324234",
                      "lastName": "Smith",
                      "firstName": "John",
                      "address": {
                        "country": "USA",
                        "city": "Camden",
                        "postalCode": "15205",
                        "addressLine1": "4616 Stuart Street",
                        "addressLine2": "Lane 1",
                        "state": "NJ"
                      },
                      "dateOfBirth": "1989-04-22",
                      "type": "I",
                      "card": {
                        "accountType": "00",
                        "accountNumber": "4005520000011126",
                        "expirationDate": "2027-03"
                      }
                    },
                    "payoutMethod": "C",
                    "transactionDetail": {
                      "surcharge": "1",
                      "initiatingPartyId": "1002",
                      "localTransactionDateTime": "2024-07-22T15:26:12",
                      "businessApplicationId": "PP",
                      "purposeOfPayment": "Remittance",
                      "transactionAmount": 100.21,
                      "transactionCurrencyCode": "USD",
                      "clientReferenceId": "64433575113"
                    }
                  }
                },
                "Send Payout Wallet": {
                  "summary": "Send Payout Wallet",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Bharath",
                      "firstName": "Anand",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "P128766Z",
                          "idIssueCountry": "UGA"
                        }
                      ],
                      "wallet": {
                        "countryCode": "UGA",
                        "accountIdentifier": "+8801888513100",
                        "accountIdentifierType": "PHONENUMBER",
                        "currencyCode": "UGX",
                        "operatorName": "ALIPAY"
                      },
                      "address": {
                        "country": "UGA",
                        "city": "KAMPALA",
                        "postalCode": "SW1A 2AA",
                        "addressLine1": "10 Downing St",
                        "addressLine2": "2124 HEH"
                      },
                      "contactEmail": "testmailid2024@visa.com",
                      "countryOfBirth": "UGA",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1991-05-27",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "4304630005267011",
                      "lastName": "Russel",
                      "firstName": "Saha",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "address": {
                        "country": "GBR",
                        "city": "Manchester",
                        "postalCode": "20500",
                        "addressLine1": "1600 Pennsylvania Ave",
                        "addressLine2": "Apt 4B"
                      },
                      "contactEmail": "testmail389abc@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1988-02-08",
                      "type": "I"
                    },
                    "payoutMethod": "W",
                    "transactionDetail": {
                      "initiatingPartyId": "1002",
                      "businessApplicationId": "PP",
                      "transactionAmount": "3613250",
                      "transactionCurrencyCode": "UGX",
                      "settlementCurrencyCode": "USD",
                      "endToEndId": "330016463808",
                      "clientReferenceId": "13501445172",
                      "senderSourceOfFunds": "01",
                      "payoutSpeed": "STANDARD"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Payout response body",
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/AccountandWalletPayoutResponse-10"
                    },
                    {
                      "$ref": "#/components/schemas/CardPayoutResponse-10"
                    }
                  ]
                },
                "examples": {
                  "Send Payout Accounts": {
                    "summary": "Send Payout Accounts",
                    "value": {
                      "transactionDetail": {
                        "transactionDateTime": "2022-11-16T10:36:07.000Z",
                        "settlementCurrencyCode": "GBP",
                        "payoutId": "172167337682452",
                        "endToEndId": "330016463808",
                        "clientReferenceId": "32917133186",
                        "payoutSpeed": "STANDARD",
                        "initiatingPartyId": 1002,
                        "fxConversionRate": 1,
                        "expectedPostingDate": "2022-11-16",
                        "destinationCurrencyCode": "GBP",
                        "transactionAmount": 1557,
                        "transactionCurrencyCode": "GBP",
                        "settlementAmount": 1557,
                        "status": "PAYMENT_RECEIVED",
                        "destinationAmount": 1557
                      }
                    }
                  },
                  "Send Payout Cards Push": {
                    "summary": "Send Payout Cards Push",
                    "value": {
                      "transactionDetail": {
                        "initiatingPartyId": 1002,
                        "transactionDateTime": "2024-07-22T19:05:30.000Z",
                        "networkResponses": [
                          {
                            "systemTraceAuditNumber": "420419",
                            "cardAcceptorId": "CA-IDCode-89",
                            "approvalCode": "21324K",
                            "acquirerCountryCode": "840",
                            "terminalId": "jAYcnj6V",
                            "acquiringBin": 445654,
                            "retrievalReferenceNumber": "420419001676",
                            "type": "PushFundsTransaction",
                            "transmissionDateTime": "2024-07-22T19:05:30.000Z",
                            "transactionAmount": 100.21,
                            "transactionCurrencyCode": "USD",
                            "actionCode": "00",
                            "responseSource": "5"
                          }
                        ],
                        "payoutId": "234234322342343",
                        "clientReferenceId": "98148028712",
                        "status": "PAYMENT_DELIVERED"
                      }
                    }
                  },
                  "Send Payout Wallet 400 Request": {
                    "summary": "Send Payout Wallet 400 Request",
                    "value": [
                      {
                        "reason": "invalidPayoutRequest",
                        "details": [
                          {
                            "code": 11055,
                            "location": "transactionDetail.businessApplicationId",
                            "message": "Value provided for one of the fields is invalid."
                          }
                        ],
                        "status": 400
                      }
                    ]
                  },
                  "Send Payout Cards Pull 400 request": {
                    "summary": "Send Payout Cards Pull 400 request",
                    "value": [
                      {
                        "reason": "invalidPayoutRequest",
                        "details": [
                          {
                            "code": 11055,
                            "location": "senderDetail.dateOfBirth",
                            "message": "Value provided for one of the fields is invalid."
                          }
                        ],
                        "status": 400
                      }
                    ]
                  },
                  "Send Payout Cards 400 request": {
                    "summary": "Send Payout Cards 400 request",
                    "value": [
                      {
                        "reason": "invalidPayoutRequest",
                        "details": [
                          {
                            "code": 45007,
                            "location": "Undefined",
                            "message": "Sender and Recipient cannot have card information in a single request."
                          }
                        ],
                        "status": 400
                      }
                    ]
                  },
                  "Send payout Accounts 400 Request": {
                    "summary": "Send payout Accounts 400 Request",
                    "value": [
                      {
                        "reason": "invalidPayoutRequest",
                        "details": [
                          {
                            "code": 11000,
                            "location": "transactionDetail.initiatingPartyId",
                            "message": "Mandatory value is missing."
                          }
                        ],
                        "status": 400
                      }
                    ]
                  },
                  "Send payout Cards Pull": {
                    "summary": "Send payout Cards Pull",
                    "value": {
                      "transactionDetail": {
                        "initiatingPartyId": 1002,
                        "transactionDateTime": "2024-07-22T19:09:18.000Z",
                        "networkResponses": [
                          {
                            "systemTraceAuditNumber": "420419",
                            "cardAcceptorId": "CA-IDCode-89",
                            "approvalCode": "98765X",
                            "acquirerCountryCode": "840",
                            "terminalId": "wnTOMUzL",
                            "acquiringBin": 445654,
                            "retrievalReferenceNumber": "420419029890",
                            "type": "PullFundsTransaction",
                            "transmissionDateTime": "2024-07-22T19:09:18.000Z",
                            "transactionAmount": 100.21,
                            "transactionCurrencyCode": "USD",
                            "actionCode": "00",
                            "responseSource": "5"
                          }
                        ],
                        "payoutId": "540433894976334",
                        "clientReferenceId": "64433575113",
                        "status": "PAYMENT_DELIVERED"
                      }
                    }
                  },
                  "Send Payout Wallet": {
                    "summary": "Send Payout Wallet",
                    "value": {
                      "transactionDetail": {
                        "transactionDateTime": "2023-05-03T11:09:51.938Z",
                        "settlementCurrencyCode": "USD",
                        "payoutId": "172167453453637",
                        "endToEndId": "330016463808",
                        "clientReferenceId": "13501445172",
                        "payoutSpeed": "STANDARD",
                        "initiatingPartyId": 1002,
                        "fxConversionRate": 3613.25,
                        "expectedPostingDate": "2023-05-03",
                        "destinationCurrencyCode": "UGX",
                        "transactionAmount": 3613250,
                        "transactionCurrencyCode": "UGX",
                        "settlementAmount": 1000,
                        "status": "PAYMENT_RECEIVED",
                        "destinationAmount": 3613250
                      }
                    }
                  }
                }
              }
            }
          },
          "202": {
            "description": "Transaction is accepted",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/202AccountPayoutCreatedResponse-1"
                    }
                  ]
                },
                "examples": {
                  "Send Payout Accounts": {
                    "summary": "Send Payout Accounts",
                    "value": {
                      "transactionDetail": {
                        "transactionDateTime": "2022-11-16T10:36:07.000Z",
                        "settlementCurrencyCode": "GBP",
                        "payoutId": "172167337682452",
                        "endToEndId": "330016463808",
                        "clientReferenceId": "32917133186",
                        "payoutSpeed": "STANDARD",
                        "initiatingPartyId": 1002,
                        "fxConversionRate": 1,
                        "expectedPostingDate": "2022-11-16",
                        "destinationCurrencyCode": "GBP",
                        "transactionAmount": 1557,
                        "transactionCurrencyCode": "GBP",
                        "settlementAmount": 1557,
                        "status": "PAYMENT_RECEIVED",
                        "destinationAmount": 1557
                      }
                    }
                  },
                  "Send Payout Cards Push": {
                    "summary": "Send Payout Cards Push",
                    "value": {
                      "transactionDetail": {
                        "initiatingPartyId": 1002,
                        "transactionDateTime": "2024-07-22T19:05:30.000Z",
                        "networkResponses": [
                          {
                            "systemTraceAuditNumber": "420419",
                            "cardAcceptorId": "CA-IDCode-89",
                            "approvalCode": "21324K",
                            "acquirerCountryCode": "840",
                            "terminalId": "jAYcnj6V",
                            "acquiringBin": 445654,
                            "retrievalReferenceNumber": "420419001676",
                            "type": "PushFundsTransaction",
                            "transmissionDateTime": "2024-07-22T19:05:30.000Z",
                            "transactionAmount": 100.21,
                            "transactionCurrencyCode": "USD",
                            "actionCode": "00",
                            "responseSource": "5"
                          }
                        ],
                        "payoutId": "234234322342343",
                        "clientReferenceId": "98148028712",
                        "status": "PAYMENT_DELIVERED"
                      }
                    }
                  },
                  "Send Payout Wallet 400 Request": {
                    "summary": "Send Payout Wallet 400 Request",
                    "value": [
                      {
                        "reason": "invalidPayoutRequest",
                        "details": [
                          {
                            "code": 11055,
                            "location": "transactionDetail.businessApplicationId",
                            "message": "Value provided for one of the fields is invalid."
                          }
                        ],
                        "status": 400
                      }
                    ]
                  },
                  "Send Payout Cards Pull 400 request": {
                    "summary": "Send Payout Cards Pull 400 request",
                    "value": [
                      {
                        "reason": "invalidPayoutRequest",
                        "details": [
                          {
                            "code": 11055,
                            "location": "senderDetail.dateOfBirth",
                            "message": "Value provided for one of the fields is invalid."
                          }
                        ],
                        "status": 400
                      }
                    ]
                  },
                  "Send Payout Cards 400 request": {
                    "summary": "Send Payout Cards 400 request",
                    "value": [
                      {
                        "reason": "invalidPayoutRequest",
                        "details": [
                          {
                            "code": 45007,
                            "location": "Undefined",
                            "message": "Sender and Recipient cannot have card information in a single request."
                          }
                        ],
                        "status": 400
                      }
                    ]
                  },
                  "Send payout Accounts 400 Request": {
                    "summary": "Send payout Accounts 400 Request",
                    "value": [
                      {
                        "reason": "invalidPayoutRequest",
                        "details": [
                          {
                            "code": 11000,
                            "location": "transactionDetail.initiatingPartyId",
                            "message": "Mandatory value is missing."
                          }
                        ],
                        "status": 400
                      }
                    ]
                  },
                  "Send payout Cards Pull": {
                    "summary": "Send payout Cards Pull",
                    "value": {
                      "transactionDetail": {
                        "initiatingPartyId": 1002,
                        "transactionDateTime": "2024-07-22T19:09:18.000Z",
                        "networkResponses": [
                          {
                            "systemTraceAuditNumber": "420419",
                            "cardAcceptorId": "CA-IDCode-89",
                            "approvalCode": "98765X",
                            "acquirerCountryCode": "840",
                            "terminalId": "wnTOMUzL",
                            "acquiringBin": 445654,
                            "retrievalReferenceNumber": "420419029890",
                            "type": "PullFundsTransaction",
                            "transmissionDateTime": "2024-07-22T19:09:18.000Z",
                            "transactionAmount": 100.21,
                            "transactionCurrencyCode": "USD",
                            "actionCode": "00",
                            "responseSource": "5"
                          }
                        ],
                        "payoutId": "540433894976334",
                        "clientReferenceId": "64433575113",
                        "status": "PAYMENT_DELIVERED"
                      }
                    }
                  },
                  "Send Payout Wallet": {
                    "summary": "Send Payout Wallet",
                    "value": {
                      "transactionDetail": {
                        "transactionDateTime": "2023-05-03T11:09:51.938Z",
                        "settlementCurrencyCode": "USD",
                        "payoutId": "172167453453637",
                        "endToEndId": "330016463808",
                        "clientReferenceId": "13501445172",
                        "payoutSpeed": "STANDARD",
                        "initiatingPartyId": 1002,
                        "fxConversionRate": 3613.25,
                        "expectedPostingDate": "2023-05-03",
                        "destinationCurrencyCode": "UGX",
                        "transactionAmount": 3613250,
                        "transactionCurrencyCode": "UGX",
                        "settlementAmount": 1000,
                        "status": "PAYMENT_RECEIVED",
                        "destinationAmount": 3613250
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Error responses",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/400AccountErrorResponses"
                    }
                  ]
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1payouts/post",
            "default": false
          }
        ],
        "x-hideTryIt": true,
        "x-sortOrder": 0
      },
      "delete": {
        "tags": [
          "Transactional API - Initial Version - Deprecated"
        ],
        "summary": "CancelPayout",
        "description": "The Cancel API is applicable only for Send to Account Payouts. Visa can accept a cancellation request in some status, e.g. PAYMENT_RECEIVED.",
        "operationId": "CancelPayout",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/PayoutIdentifier"
            }
          },
          {
            "name": "idType",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/TransactionIdType"
            }
          },
          {
            "name": "initiatingPartyId",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/InitiatingPartyId"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/CancelPayoutResponse"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-6"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-6"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1payouts/delete",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/payouts/validate": {
      "post": {
        "tags": [
          "Transactional API - Initial Version - Deprecated"
        ],
        "summary": "Validate Payout",
        "description": "Validate Payout Request",
        "operationId": "ValidatePayout",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ValidatePayoutRequest-28"
              },
              "examples": {
                "validate cards Push Request": {
                  "summary": "validate cards Push Request",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Alba",
                      "firstName": "Jessica",
                      "address": {
                        "country": "USA",
                        "city": "Florida",
                        "postalCode": "33634",
                        "addressLine1": "2 Marcus Clarke St,"
                      },
                      "dateOfBirth": "2001-01-01",
                      "type": "I",
                      "card": {
                        "accountType": "00",
                        "accountNumber": "4957030420210454",
                        "expirationDate": "2027-03"
                      }
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "A42434234S324234",
                      "lastName": "Smith",
                      "firstName": "John",
                      "address": {
                        "country": "USA",
                        "city": "Camden",
                        "postalCode": "15205",
                        "addressLine1": "4616 Stuart Street",
                        "addressLine2": "Lane 1",
                        "state": "NJ"
                      },
                      "dateOfBirth": "1989-04-22",
                      "type": "I"
                    },
                    "payoutMethod": "C",
                    "transactionDetail": {
                      "surcharge": "1",
                      "initiatingPartyId": "1002",
                      "localTransactionDateTime": "{{curDate}}T15:26:12",
                      "businessApplicationId": "PP",
                      "purposeOfPayment": "Remittance",
                      "transactionAmount": 100.21,
                      "transactionCurrencyCode": "USD"
                    }
                  }
                },
                "Validate Wallet payout": {
                  "summary": "Validate Wallet payout",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Bharath",
                      "firstName": "Anand",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "P128766Z",
                          "idIssueCountry": "UGA"
                        }
                      ],
                      "wallet": {
                        "countryCode": "UGA",
                        "accountIdentifier": "+8801888513100",
                        "accountIdentifierType": "PHONENUMBER",
                        "currencyCode": "UGX",
                        "operatorName": "ALIPAY"
                      },
                      "address": {
                        "country": "UGA",
                        "city": "KAMPALA",
                        "postalCode": "SW1A 2AA",
                        "addressLine1": "10 Downing St",
                        "addressLine2": "2124 HEH"
                      },
                      "contactEmail": "testmailid2024@visa.com",
                      "countryOfBirth": "UGA",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1991-05-27",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "4304630005267011",
                      "lastName": "Russel",
                      "firstName": "Saha",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "address": {
                        "country": "GBR",
                        "city": "Manchester",
                        "postalCode": "20500",
                        "addressLine1": "1600 Pennsylvania Ave",
                        "addressLine2": "Apt 4B"
                      },
                      "contactEmail": "testmail389abc@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1988-02-08",
                      "type": "I"
                    },
                    "payoutMethod": "W",
                    "transactionDetail": {
                      "initiatingPartyId": "1002",
                      "businessApplicationId": "PP",
                      "transactionAmount": "3613250",
                      "transactionCurrencyCode": "UGX",
                      "settlementCurrencyCode": "USD",
                      "endToEndId": "330016463808",
                      "senderSourceOfFunds": "01",
                      "payoutSpeed": "STANDARD"
                    }
                  }
                },
                "Validate Cards Pull request": {
                  "summary": "Validate Cards Pull request",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Alba",
                      "firstName": "Jessica",
                      "address": {
                        "country": "USA",
                        "city": "Florida",
                        "postalCode": "33634",
                        "addressLine1": "2 Marcus Clarke St,"
                      },
                      "dateOfBirth": "2001-01-01",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "A42434234S324234",
                      "lastName": "Smith",
                      "firstName": "John",
                      "address": {
                        "country": "USA",
                        "city": "Camden",
                        "postalCode": "15205",
                        "addressLine1": "4616 Stuart Street",
                        "addressLine2": "Lane 1",
                        "state": "NJ"
                      },
                      "dateOfBirth": "1989-04-22",
                      "type": "I",
                      "card": {
                        "accountType": "00",
                        "accountNumber": "4005520000011126",
                        "expirationDate": "2027-03"
                      }
                    },
                    "payoutMethod": "C",
                    "transactionDetail": {
                      "surcharge": "1",
                      "initiatingPartyId": "1002",
                      "localTransactionDateTime": "{{curDate}}T15:26:12",
                      "businessApplicationId": "PP",
                      "purposeOfPayment": "Remittance",
                      "transactionAmount": 100.21,
                      "transactionCurrencyCode": "USD"
                    }
                  }
                },
                "Validate Account Payout": {
                  "summary": "Validate Account Payout",
                  "value": {
                    "recipientDetail": {
                      "lastName": "Bharath",
                      "firstName": "Anand",
                      "contactNumberType": "MOBILE",
                      "bank": {
                        "bankCode": "800554",
                        "bankCodeType": "SORT_CODE",
                        "accountNumberType": "DEFAULT",
                        "accountName": "Money Market",
                        "countryCode": "GBR",
                        "bankName": "Barclays",
                        "accountNumber": "6970093",
                        "currencyCode": "GBP"
                      },
                      "cityOfBirth": "London",
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "P128766Z",
                          "idIssueCountry": "GBR"
                        }
                      ],
                      "address": {
                        "country": "GBR",
                        "city": "London",
                        "postalCode": "SW1A 2AA",
                        "addressLine1": "10 Downing St",
                        "addressLine2": "2124 HEH"
                      },
                      "contactEmail": "testmailid2024@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1991-05-27",
                      "type": "I"
                    },
                    "senderDetail": {
                      "senderReferenceNumber": "4304630005267011",
                      "lastName": "Russel",
                      "firstName": "Saha",
                      "contactNumberType": "MOBILE",
                      "cityOfBirth": "London",
                      "address": {
                        "country": "GBR",
                        "city": "Manchester",
                        "postalCode": "20500",
                        "addressLine1": "1600 Pennsylvania Ave",
                        "addressLine2": "Apt 4B"
                      },
                      "contactEmail": "testmail389abc@visa.com",
                      "countryOfBirth": "GBR",
                      "contactNumber": "+123456789",
                      "dateOfBirth": "1988-02-08",
                      "type": "I"
                    },
                    "payoutMethod": "B",
                    "transactionDetail": {
                      "initiatingPartyId": "1002",
                      "businessApplicationId": "PP",
                      "transactionAmount": "1557",
                      "transactionCurrencyCode": "GBP",
                      "settlementCurrencyCode": "GBP",
                      "endToEndId": "330016463808",
                      "senderSourceOfFunds": "01",
                      "payoutSpeed": "STANDARD"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Business validation result - if the Payout request is valid and can be processed if sent as a payout transaction",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidatePayoutResponse-11"
                },
                "examples": {
                  "validate cards Push Request": {
                    "summary": "validate cards Push Request",
                    "value": {
                      "validationResultCode": "INVALID",
                      "validationDetails": [
                        {
                          "reason": "Card Validation",
                          "details": [
                            {
                              "message": "Address verification failed"
                            }
                          ]
                        }
                      ]
                    }
                  },
                  "Validate Wallet payout": {
                    "summary": "Validate Wallet payout",
                    "value": {
                      "validationResultCode": "VALID_WITH_NETWORK"
                    }
                  },
                  "Validate Cards Pull request": {
                    "summary": "Validate Cards Pull request",
                    "value": {
                      "validationResultCode": "INVALID",
                      "validationDetails": [
                        {
                          "reason": "Card Validation",
                          "details": [
                            {
                              "message": "Card validation failed"
                            }
                          ]
                        }
                      ]
                    }
                  },
                  "Validate Account Payout": {
                    "summary": "Validate Account Payout",
                    "value": {
                      "validationResultCode": "VALID"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Error responses",
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/400AccountErrorResponses"
                    },
                    {
                      "$ref": "#/components/schemas/400ErrorResponses-7"
                    }
                  ]
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "429": {
            "$ref": "#/components/responses/429ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1payouts~1validate/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/wallets/payout/metadata": {
      "get": {
        "tags": [
          "Get Requirements"
        ],
        "summary": "Get Metadata Wallets",
        "description": "Get Metadata of Sender, Recipient and Transaction details",
        "operationId": "GetMetadataWallets",
        "parameters": [
          {
            "name": "recipientCountryCode",
            "in": "query",
            "description": "This field is always required when payoutMethod = W.  \n",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/AlphaCountryCode-1"
            }
          },
          {
            "name": "recipientCurrencyCode",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/AlphaCurrencyCode-1"
            }
          },
          {
            "name": "recipientWalletOperator",
            "in": "query",
            "description": "Wallet operator enumerated codes\n",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/OperatorName"
            }
          },
          {
            "name": "payoutMethod",
            "in": "query",
            "required": false,
            "explode": true,
            "schema": {
              "type": "string",
              "description": "This parameter indicates the payout method e.g. to Wallet\n\nValid ENUM values:\n- \"W\" Visa Direct Wallet\n",
              "enum": [
                "W"
              ]
            }
          },
          {
            "name": "initiatingPartyId",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/InitiatingPartyId-2"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/GetMetaDataResponse-7"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-6"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-6"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1wallets~1payout~1metadata/get",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/accounts/payout/metadata": {
      "get": {
        "tags": [
          "Get Requirements"
        ],
        "summary": "Get Metadata Accounts",
        "description": "Get Metadata of Sender, Recipient and Transaction details",
        "operationId": "GetMetadataAccounts",
        "parameters": [
          {
            "name": "recipientCountryCode",
            "in": "query",
            "description": "Only one of recipientBankCountryCluster or recipientCountryCode parameters must be sent.  \n",
            "required": false,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/AlphaCountryCode-1"
            }
          },
          {
            "name": "recipientCurrencyCode",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/AlphaCurrencyCode-1"
            }
          },
          {
            "name": "recipientBankCountryCluster",
            "in": "query",
            "description": "Country cluster code. Only one of recipientBankCountryCluster or recipientCountryCode parameters must be sent.\n",
            "required": false,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/CountryCluster"
            }
          },
          {
            "name": "payoutMethod",
            "in": "query",
            "required": false,
            "explode": true,
            "schema": {
              "type": "string",
              "description": "This parameter indicates the payout method e.g. to Account\n\nValid ENUM values:\n- \"B\" Visa Direct Account\n",
              "enum": [
                "B"
              ]
            }
          },
          {
            "name": "initiatingPartyId",
            "in": "query",
            "required": true,
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/InitiatingPartyId-2"
            }
          }
        ],
        "responses": {
          "200": {
            "$ref": "#/components/responses/GetMetaDataResponse-7"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-6"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-6"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1accounts~1payout~1metadata/get",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/wallets/verify": {
      "post": {
        "tags": [
          "Verify"
        ],
        "summary": "Verify Wallet",
        "description": "Verify Wallets Recipient Detail Request",
        "operationId": "VerifyWalletsRecipient",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyRecipientWalletOnlyRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Business validation result - if the Payout request is valid and can be processed if sent as a payout transaction",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WalletVerifyResponse"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-6"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-6"
          },
          "429": {
            "$ref": "#/components/responses/429ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1wallets~1verify/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/cards/verify": {
      "post": {
        "tags": [
          "Verify"
        ],
        "summary": "Verify Cards",
        "description": "Validates if a card is eligible for push or pull payments",
        "operationId": "cardverification",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerificationRequestData-16"
              },
              "examples": {
                "Verify cards": {
                  "summary": "Verify cards",
                  "value": {
                    "cardHolder": {
                      "address": {
                        "postalCode": "74101",
                        "addressLine1": "801 Metro Center Blv"
                      },
                      "name": {
                        "lastName": "test"
                      }
                    },
                    "card": {
                      "expiryDate": "2030-01",
                      "cvv2": "686",
                      "accountNumberType": "DEFAULT",
                      "accountNumber": "4957030420210454"
                    },
                    "originatorDetail": {
                      "cardAcceptor": {
                        "address": {
                          "country": "USA",
                          "city": "San Francisco",
                          "postalCode": "94404",
                          "county": "FCC",
                          "stateCode": "CA"
                        },
                        "name": "Mr Smith",
                        "id": "5678"
                      },
                      "acquirerCountryCode": "840",
                      "acquiringBin": "445654"
                    },
                    "transactionDetail": {
                      "clientReferenceId": "520315140502"
                    }
                  }
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful verification check",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VerificationResponseData"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponses-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1cards~1verify/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/accounts/verify": {
      "post": {
        "tags": [
          "Verify"
        ],
        "summary": "Verify Account",
        "description": "Verify Accounts Recipient Detail Request",
        "operationId": "VerifyAccountRecipient",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AccountVerificationOnlyRequest-4"
              },
              "examples": {
                "VerifyRecipientMatchExample": {
                  "summary": "VerifyRecipientMatchExample",
                  "value": {
                    "initiatingPartyId": 123456,
                    "clientVerificationReference": "1234567890",
                    "recipientDetail": {
                      "lastName": "Anderson",
                      "firstName": "Joe",
                      "bank": {
                        "bankCode": "123456780",
                        "bankCodeType": "ABA",
                        "accountNumberType": "DEFAULT",
                        "accountName": "Joe Anderson",
                        "countryCode": "USA",
                        "accountType": "1",
                        "bankName": "Bank of America, N.A.",
                        "accountNumber": "000123456789",
                        "BIC": "BOFAUS3NXXX",
                        "currencyCode": "USD"
                      },
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "1234567890",
                          "idIssueCountry": "USA"
                        }
                      ],
                      "name": "Joe Anderson",
                      "type": "I"
                    },
                    "payoutMethod": "B"
                  }
                },
                "VerifyRecipientNoMatchExample": {
                  "summary": "VerifyRecipientNoMatchExample",
                  "value": {
                    "initiatingPartyId": 123456,
                    "clientVerificationReference": "1234567890",
                    "recipientDetail": {
                      "lastName": "Anderson",
                      "firstName": "Joe",
                      "bank": {
                        "bankCode": "123456780",
                        "bankCodeType": "ABA",
                        "accountNumberType": "DEFAULT",
                        "accountName": "Joe Anderson",
                        "countryCode": "USA",
                        "accountType": "1",
                        "bankName": "Bank of America, N.A.",
                        "accountNumber": "000123456789",
                        "BIC": "BOFAUS3NXXX",
                        "currencyCode": "USD"
                      },
                      "identificationList": [
                        {
                          "idType": "P",
                          "idNumber": "1234567890",
                          "idIssueCountry": "USA"
                        }
                      ],
                      "name": "Joe Anderson",
                      "type": "I"
                    },
                    "payoutMethod": "B"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Business validation result - if the Payout request is valid and can be processed if sent as a payout transaction",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountVerifyResponse-6"
                },
                "examples": {
                  "VerifyRecipientMatchExample": {
                    "summary": "VerifyRecipientMatchExample",
                    "value": {
                      "clientVerificationReference": "1234567890",
                      "verificationStatus": "COMPLETED",
                      "accountVerificationDetail": {
                        "bankAccountName": "Joe Anderson",
                        "accountIdentifierMatch": "YES",
                        "currencyCodes": [
                          "USD"
                        ],
                        "nameMatch": "STRONG_MATCH"
                      },
                      "verificationId": "5003f6a0-2c44-11b2-aa57-47378ae53313"
                    }
                  },
                  "VerifyRecipientNoMatchExample": {
                    "summary": "VerifyRecipientNoMatchExample",
                    "value": {
                      "clientVerificationReference": "1234567890",
                      "verificationStatus": "COMPLETED",
                      "accountVerificationDetail": {
                        "accountIdentifierMatch": "NO",
                        "verificationDetails": {
                          "code": "504104",
                          "location": "recipientDetail.bank.accountNumber",
                          "message": "This account could not be verified. It could belong to a Financial Institution not covered by this service."
                        }
                      },
                      "verificationId": "5003f6a0-2c44-11b2-aa57-47378ae53313"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-14"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-16"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-25"
          },
          "429": {
            "$ref": "#/components/responses/429ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1accounts~1verify/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/cards/payin": {
      "post": {
        "tags": [
          "Payin"
        ],
        "summary": "Payin from Cards",
        "description": "Debit funds from sender's Visa account using Account Funding Transaction (AFT)",
        "operationId": "createAFTTransaction",
        "requestBody": {
          "$ref": "#/components/requestBodies/AFTRequest-10"
        },
        "responses": {
          "200": {
            "$ref": "#/components/responses/AFTResponse-6"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponses-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1cards~1payin/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    },
    "/visadirect-connect/v1/cards/eligibility": {
      "post": {
        "tags": [
          "Eligibility"
        ],
        "summary": "Eligibility check of Card",
        "description": "Validates if a card is eligible for payout or payin payments",
        "operationId": "cardEligibility",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EligibilityRequestData"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful verification check",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EligibilityResponseData"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponses-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponse-2"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponse-2"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "operationPointer": "#/paths/~1visadirect-connect~1v1~1cards~1eligibility/post",
            "default": false
          }
        ],
        "x-hideTryIt": true
      }
    }
  },
  "components": {
    "schemas": {
      "EventNotification": {
        "required": [
          "eventType",
          "initiatingPartyId",
          "payoutId"
        ],
        "properties": {
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId-2"
              }
            ],
            "exampleSetFlag": false
          },
          "eventType": {
            "description": "Possible events on a transaction\n- PENDING_NETWORK_REVIEW: The payout is currently under review at Network Partner.\n- NETWORK_REVIEW_CLOSED: The Network Partner review is now closed. Refer to payout status for additional information.\n",
            "example": "PENDING_NETWORK_REVIEW",
            "enum": [
              "PENDING_NETWORK_REVIEW",
              "NETWORK_REVIEW_CLOSED"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "MotoECIIndicator-1": {
        "maximum": 8,
        "minimum": 1,
        "type": "number",
        "description": "Identifies the level of security used in an electronic commerce transaction or the type of mail or telephone order. Defaults to 7 for U.S. and 5 for the rest of the world for e-Commerce transactions. For Core OCT, acquirers supply indicator values, which Visa forwards to issuers that have successfully tested to receive them. If not provided, Visa defaults its value to 7. Format Single-digit numeric code in the range [1 .. 8].<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid ECI value as per payment network standards. If omitted, API applies default values based on region.</li>\n</ul>",
        "example": 7
      },
      "WalletPayoutRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest"
          }
        ]
      },
      "VauErrorReasonCode": {
        "maxLength": 6,
        "minLength": 6,
        "type": "string",
        "description": "Error reason code for VAU",
        "example": "000000"
      },
      "OCTTransactionDetail-11": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTTransactionDetailAdditionalData"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "description": "3-digit numeric or 3-character alpha ISO currency code of the transaction as expressed in the amount field. This can be either:<ul><li>The originator's chosen currency for the transaction OR</li><li>The recipient's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode.<br><b>*Note</b>: This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "ReasonDetails": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReturnReasonCode-1"
              }
            ]
          },
          "comment": {
            "$ref": "#/components/schemas/ReturnReasonCodeComment"
          },
          "description": {
            "$ref": "#/components/schemas/ReturnReasonCodeDescription-1"
          }
        }
      },
      "CardPayoutResponse-10": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse-9"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "TotalAmountDue": {
        "type": "number",
        "description": "Total amount due by due date.",
        "format": "double"
      },
      "LocalTransactionDateTime": {
        "type": "string",
        "description": "Local date and time of the transaction",
        "format": "date-time",
        "example": "2023-06-15T14:25:32Z"
      },
      "ValidatePayoutWalletOnlyRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest"
          }
        ]
      },
      "NotificationsErrorResponse-1": {
        "properties": {
          "reason": {
            "description": "The short description of the error.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "description": "3 digit HTTP status code",
            "example": 400,
            "exampleSetFlag": true,
            "types": [
              "integer"
            ]
          },
          "details": {
            "description": "Reserved for future use.",
            "items": {
              "properties": {
                "code": {
                  "description": "A short code indicating the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "message": {
                  "description": "The long description of the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "location": {
                  "description": "The place in the incoming message that the particular error occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "message": {
            "description": "The long description of the error",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "TerminalId": {
        "maxLength": 8,
        "type": "string",
        "description": "Identifier for the terminal at the card acceptor location",
        "example": "TERM1234"
      },
      "FieldValue": {
        "title": "FieldValue",
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "description": "List item label."
          },
          "option": {
            "type": "string",
            "description": "List option value."
          }
        },
        "description": "Is used to create a select list within a User Interface for the 'additionalFieldWithValues' data field."
      },
      "SenderCardPosData": {
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          }
        }
      },
      "FirstName-2": {
        "maxLength": 35,
        "minLength": 1,
        "description": "Required when recipient is an individual.",
        "example": "Joe",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "FirstName-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "First name of the recipient"
      },
      "RecipientCompany-3": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-3"
          }
        }
      },
      "RecipientCompany-4": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-5"
          }
        }
      },
      "RecipientCompany-1": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-1"
          }
        }
      },
      "RecipientCompany-2": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-2"
          }
        }
      },
      "RecipientCompany-7": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-5"
          }
        }
      },
      "RecipientCompany-5": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-6"
          }
        }
      },
      "SenderFirstName": {
        "maxLength": 35,
        "minLength": 2,
        "type": "string",
        "description": "Sender first name. Conditionally required when \"name\" is not provided.  The length of first name and last name combined must be at least 3 characters. Must not contain exclusively numeric characters. Must not contain special symbols.\n",
        "example": "John"
      },
      "RecipientCompany-6": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-4"
          }
        }
      },
      "ServiceLocationPostalCode": {
        "maxLength": 10,
        "minLength": 5,
        "type": "string",
        "description": "Postal code of the service location",
        "example": "54321"
      },
      "DigitalAsset": {
        "required": [
          "address",
          "currencyCode",
          "network"
        ],
        "type": "object",
        "properties": {
          "address": {
            "maxLength": 50,
            "minLength": 1,
            "pattern": "^[A-Za-z0-9:]+(\\?dt=[A-Za-z0-9]+)?$",
            "type": "string",
            "description": "The crypto wallet address where funds will be sent",
            "example": "0x65BFCf1a6289a0b77b4D3F7d12005a05949FD8C3"
          },
          "network": {
            "type": "string",
            "description": "The blockchain network where the wallet operates \n(e.g., ETHEREUM, SOLANA)\n",
            "example": "SOLANA",
            "enum": [
              "ETHEREUM",
              "SOLANA"
            ]
          },
          "currencyCode": {
            "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
          }
        },
        "description": "Recipient's digital asset object. \nConditional object when payoutMethod has value 'D'\n"
      },
      "CustomerReference-1": {
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field is present only when applicable based on transaction context."
      },
      "PayoutToWalletRequest-11": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-13"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "industryCode": {
                "$ref": "#/components/schemas/industryCode-1"
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-6"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-10"
              }
            ]
          }
        }
      },
      "WalletRecipientIsCompany-1": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-1"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "RecipientAddress": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "City of the recipient's address",
            "example": "San Francisco"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Country code (ISO 3166-1 alpha-3) of the recipient's address",
            "example": "USA"
          },
          "stateCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "2-character abbreviated state code or territory code",
            "example": "CA"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Postal or zip code of the recipient's address",
            "example": "94404"
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "First line of the recipient's address",
            "example": "123 Main St"
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Second line of the recipient's address",
            "example": "Apt 4B"
          },
          "subDivisionMinorCode": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string",
            "description": "Sub-division minor code of recipient's address"
          }
        },
        "description": "Address information of the recipient"
      },
      "WalletRecipientIsCompany-3": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-6"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "WalletRecipientIsCompany-2": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-5"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "WalletRecipientIsCompany-5": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-8"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "WalletRecipientIsCompany-4": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-7"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "PayoutToWalletRequest-10": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-12"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-4"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-5"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-9"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletRecipientIsCompany-7": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-10"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "WalletRecipientIsCompany-6": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-9"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "RecipientContactEmail-1": {
        "maxLength": 99,
        "minLength": 1,
        "type": "string",
        "description": "recipientDetail.contactEmail Description: Contains the recipient's email address for communication and transaction notifications.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid email address format</li>\n  <li>Cannot contain spaces or special symbols outside allowed characters</li>\n</ul>",
        "format": "email",
        "example": "john.doe@example.com"
      },
      "WalletRecipientIsCompany-9": {
        "required": [
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-14"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletRecipientIsCompany-8": {
        "required": [
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-11"
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletSenderIsCompany": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanySenderIdentificationListWallet"
          }
        }
      },
      "OCTRequestData": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "RouteDefinitionChangePerCountryAndCurrency-1": {
        "required": [
          "metadataVersion",
          "metadataVersionDate",
          "notificationId",
          "notificationType",
          "payoutMethod",
          "recipientCountryCode",
          "recipientCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Payout method code. Valid values are B- Bank , W- Wallet (This ENUM is not currently supported. It is for future use.)\n",
            "enum": [
              "B",
              "w"
            ]
          },
          "notificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique identifier for the notification.\n",
            "example": "58e0a7d7-eebc-11d8-9669-0800200c9a66"
          },
          "metadataVersion": {
            "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
            "type": "string",
            "description": "This is the version of the updated route definition. \nIt is in the format <major-version>.<minor-version>.<patch>.\n\n* patch updates are documentation updates only and should not influence the processing of a payout transaction. Example: changes to the description of Purpose of Payment code.\n\n* minor-version updates indicate backward compatible changes in the route validation rules on a payout transaction. Example: addition of a new Purpose of Payment code.\n\n* major-version updates indicate backward incompatible changes in the route validation rules on a payout transaction. Such changes are usually regulatory in nature or due to partner migration on Visa's backend. Example: Purpose of Payment code changing from a \"conditional\"/ \"recommended\" to a \"required\" field.\n",
            "example": "1.0.0"
          },
          "notificationType": {
            "type": "string",
            "description": "Notification Type. Valid value- LIVE_UPDATE, FUTURE_UPDATE (This ENUM is not currently supported. It is for future use.), ROUTE_DISCONTINUED",
            "enum": [
              "LIVE_UPDATE",
              "FUTURE_UPDATE",
              "ROUTE_DISCONTINUED"
            ]
          },
          "metadataVersionDate": {
            "type": "string",
            "description": "This is the date when the metadata version will go live.\n",
            "format": "date"
          },
          "recipientCountryCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-3166 (Alpha-3) country code\n",
            "example": "USA"
          },
          "recipientCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-4217 (Alpha-3) currency code\n",
            "example": "USD"
          },
          "recipientWalletOperator": {
            "type": "string",
            "description": "Wallet operator enumerated names. This field will be present only when the payoutMethod is W. recipientWalletOperator is for future use as payoutMethod=W is not currently supported.\n",
            "example": "BKASH"
          }
        }
      },
      "RiskAssessmentResults-2": {
        "type": "object",
        "properties": {
          "exemptionReasonCode": {
            "$ref": "#/components/schemas/ExemptionReasonCode"
          },
          "scpExemptionIndicator": {
            "$ref": "#/components/schemas/ScpExemptionIndicator"
          },
          "traExemptionIndicator": {
            "$ref": "#/components/schemas/TraExemptionIndicator"
          },
          "lowValueExemptionIndicator": {
            "$ref": "#/components/schemas/LowValueExemptionIndicator"
          },
          "delegatedAuthenticationIndicator": {
            "$ref": "#/components/schemas/DelegatedAuthenticationIndicator-2"
          },
          "trustedMerchantExemptionIndicator": {
            "$ref": "#/components/schemas/TrustedMerchantExemptionIndicator"
          }
        }
      },
      "DigitalAssetRecipientIsCompany-4": {
        "required": [
          "address",
          "identificationList",
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-4"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetCompanyRecipientIdentificationListWallet-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RiskAssessmentResults-3": {
        "type": "object",
        "properties": {
          "exemptionReasonCode": {
            "$ref": "#/components/schemas/ExemptionReasonCode"
          },
          "scpExemptionIndicator": {
            "description": "Secure Corporate Payment (SCP) exemption indicator. This field is present in the API response only if the following conditions are met: optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma-separated values in the API request. SCP exemption was claimed in the acquirer request OR issuer chooses to approve the transaction under SCP exemption rules.<br><br><b>Valid Values:</b><br><ul><li>HONORED – Secure corporate payment exemption validated/honored</li><li>NOT_HONORED – Secure corporate payment exemption failed validation/not honored</li></ul><br><br><b>Validation Rules:</b><br><ul><li>This field is present in the API response only if the exemption was claimed and optionalResponseParameters includes \"RISKASSESSMENTDATA\".</li></ul>",
            "allOf": [
              {
                "$ref": "#/components/schemas/ScpExemptionIndicator-1"
              }
            ]
          },
          "traExemptionIndicator": {
            "description": "Transaction Risk Analysis (TRA) exemption indicator. This field is present in the API response only if the following conditions are met: optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma-separated values in the API request. TRA exemption was claimed in the acquirer request OR issuer chooses to approve the transaction under TRA exemption rules.<br><br><b>Valid Values:</b><br><ul><li>HONORED – TRA exemption validated/honored</li><li>NOT_HONORED – TRA exemption failed validation/not honored</li></ul><br><br><b>Validation Rules:</b><br><ul><li>This field is present in the API response only if the exemption was claimed and optionalResponseParameters includes \"RISKASSESSMENTDATA\".</li></ul>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TraExemptionIndicator-1"
              }
            ]
          },
          "lowValueExemptionIndicator": {
            "$ref": "#/components/schemas/LowValueExemptionIndicator-1"
          },
          "delegatedAuthenticationIndicator": {
            "description": "Delegated Authentication Indicator. This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br><b>Valid Values:</b><br><ul><li>HONORED – Delegated authentication request validated/honored</li><li>NOT_HONORED – Delegated authentication request failed validation/not honored</li></ul>",
            "allOf": [
              {
                "$ref": "#/components/schemas/DelegatedAuthenticationIndicator-3"
              }
            ]
          },
          "trustedMerchantExemptionIndicator": {
            "$ref": "#/components/schemas/TrustedMerchantExemptionIndicator"
          }
        }
      },
      "DigitalAssetRecipientIsCompany-3": {
        "required": [
          "address",
          "identificationList",
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-3"
          },
          "identificationList": {
            "$ref": "#/components/schemas/DigitalAssetCompanyRecipientIdentificationListWallet-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RiskAssessmentResults-1": {
        "type": "object",
        "properties": {
          "exemptionReasonCode": {
            "$ref": "#/components/schemas/ExemptionReasonCode"
          },
          "scpExemptionIndicator": {
            "$ref": "#/components/schemas/ScpExemptionIndicator"
          },
          "traExemptionIndicator": {
            "$ref": "#/components/schemas/TraExemptionIndicator"
          },
          "lowValueExemptionIndicator": {
            "$ref": "#/components/schemas/LowValueExemptionIndicator"
          },
          "delegatedAuthenticationIndicator": {
            "$ref": "#/components/schemas/DelegatedAuthenticationIndicator-1"
          },
          "trustedMerchantExemptionIndicator": {
            "$ref": "#/components/schemas/TrustedMerchantExemptionIndicator"
          }
        }
      },
      "DigitalAssetRecipientIsCompany-5": {
        "required": [
          "address",
          "identificationList",
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/DigitalAssetCompanyRecipientIdentificationListWallet-3"
          }
        }
      },
      "400AccountErrorResponses": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/ErrorResponseWithMandatoryFields"
        }
      },
      "AFTRRequestData": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTROriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRTransactionDetail"
          }
        },
        "description": "Details for Account Funding Transaction Reversal"
      },
      "RecipientAuthenticationData-1": {
        "type": "object",
        "properties": {
          "cvv2": {
            "maxLength": 4,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br>\nThe cvv2 value provided by the account holder for the recipientDetail.card.accountNumber in the request. cvv2 is required for Mastercard transaction with BAI=GP(Gambling Payout)."
          }
        }
      },
      "DigitalAssetRecipientIsCompany-2": {
        "required": [
          "address",
          "identificationList",
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-2"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetCompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "DigitalAssetRecipientIsCompany-1": {
        "required": [
          "address",
          "identificationList",
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-1"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetCompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "FlexibleAmountUtilized-1": {
        "description": "Amount of liquidity that has been utilized.",
        "format": "double",
        "exampleSetFlag": false,
        "types": [
          "number"
        ]
      },
      "ClientReferenceId": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Identifier assigned by the Originating Entity to uniquely identify the transaction.\n\nISO20022 field name: Transaction Identification\n\nOnly alphanumeric and '-' characters are allowed.\n"
      },
      "AccountPayoutOnlyRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-9"
          }
        ]
      },
      "AccountPayoutOnlyRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-7"
          }
        ]
      },
      "PaymentFacilitatorPostalCode-1": {
        "maxLength": 10,
        "minLength": 4,
        "type": "string",
        "description": "Specifies the postal or ZIP code of the payment facilitator's address. This helps validate the facilitator's location for compliance and transaction routing.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Numeric or alphanumeric (depending on country). Some countries like Canada and UK use alphanumeric postal codes.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the official postal code of the payment facilitator's registered address.</li>\n  <li>Include full code without spaces if required by API specification.</li>\n</ul>",
        "example": "K1A0B1 (Canada)"
      },
      "AccountPayoutOnlyRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-8"
          }
        ]
      },
      "AccountPayoutOnlyRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-5"
          }
        ]
      },
      "AccountPayoutOnlyRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-6"
          }
        ]
      },
      "AccountPayoutOnlyRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-3"
          }
        ]
      },
      "AccountPayoutOnlyRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-4"
          }
        ]
      },
      "AccountPayoutOnlyRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-1"
          }
        ]
      },
      "AccountPayoutOnlyRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-2"
          }
        ]
      },
      "PaymentFacilitatorCity-1": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "City where the payment facilitator is located.",
        "example": "City Name"
      },
      "OCTResponseOriginatorDetail": {
        "required": [
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTResponseCardAcceptor"
          }
        }
      },
      "Combined": {
        "required": [
          "conditionDefiningFields",
          "conditions",
          "countrySpecificSchemas",
          "info",
          "routeDefiningFields",
          "rules",
          "schemas",
          "transactionReferences"
        ],
        "type": "object",
        "properties": {
          "info": {
            "$ref": "#/components/schemas/Info"
          },
          "rules": {
            "$ref": "#/components/schemas/Rules"
          },
          "schemas": {
            "$ref": "#/components/schemas/Schemas"
          },
          "conditions": {
            "type": "array",
            "description": "This section states the validations that apply in a Send Payout API request. It contains fields and values that define a condition ID.\n",
            "items": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/AnyCondition"
                },
                {
                  "$ref": "#/components/schemas/AllCondition"
                },
                {
                  "$ref": "#/components/schemas/NotCondition"
                }
              ]
            }
          },
          "routeDefiningFields": {
            "$ref": "#/components/schemas/RouteDefiningFields"
          },
          "maxTransactionAmount": {
            "$ref": "#/components/schemas/MaxTransactionAmountEquivalent"
          },
          "minTransactionAmount": {
            "$ref": "#/components/schemas/MinTransactionAmountEquivalent"
          },
          "transactionReferences": {
            "$ref": "#/components/schemas/TransactionReferences"
          },
          "countrySpecificSchemas": {
            "$ref": "#/components/schemas/CountrySpecificSchemas"
          },
          "conditionDefiningFields": {
            "$ref": "#/components/schemas/ConditionDefiningFields"
          },
          "clientDrivenConditionalFields": {
            "$ref": "#/components/schemas/ClientDrivenConditionalFields"
          }
        }
      },
      "PayoutNotificationFailedRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "PayoutNotificationFailedRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "SystemsTraceAuditNumber": {
        "type": "number",
        "description": "Systems trace audit number",
        "example": 123456
      },
      "PayoutNotificationFailedRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "PayoutNotificationFailedRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "PayoutNotificationFailedRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "PayoutNotificationFailedRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "PayoutNotificationFailedRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "VerificationRequestData-14": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-14"
          }
        },
        "description": "Request data for checking card verification"
      },
      "VerificationRequestData-15": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-15"
          }
        },
        "description": "Request data for checking card verification"
      },
      "PayoutNotificationFailedRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "VerificationRequestData-12": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-12"
          }
        },
        "description": "Request data for checking card verification"
      },
      "SignedAmount": {
        "type": "number",
        "format": "double",
        "example": 12.34
      },
      "PayoutNotificationFailedRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-3"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-1"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "VerificationRequestData-13": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-13"
          }
        },
        "description": "Request data for checking card verification"
      },
      "DigitalAssetCurrencyCode-1": {
        "description": "The cryptocurrency or fiat currency code",
        "example": "USDC",
        "enum": [
          "USDC"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AncillaryRecipientDetailAddress": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the city of the ancillary recipient's address."
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "This field contains the 3-digit numeric or 3-character alpha ISO country code of the ancillary recipient's address.<br><br>Refer to <a href=\"https://developer.visa.com/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "This field contains the postal code of the ancillary recipient's address."
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the first line of the ancillary recipient's address."
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the second line of the ancillary recipient's address."
          }
        }
      },
      "VerificationRequestData-18": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-18"
          }
        },
        "description": "Request data for checking card verification"
      },
      "PayoutNotificationRequestStatus-1": {
        "description": "Status of the transaction being queried\n\nISO20022 field name: Transaction Status\n",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "VerificationRequestData-16": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-16"
          }
        },
        "description": "Request data for checking card verification"
      },
      "ServiceLocationDetails": {
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/ServiceLocationAddress"
          }
        }
      },
      "AccountQueryOnlyErrorResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-4"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "AccountQueryOnlyErrorResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "VerificationRequestData-11": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-11"
          }
        },
        "description": "Request data for checking card verification"
      },
      "AccountSenderTypeIsUnspecified-1": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Sender name. Full name is conditionally required when \"firstName\" and \"lastName\" are not provided. <br>Must have at least 3 chars<br>Must not contain exclusively numeric characters<br>Must not contain special symbols<br><table>  <tr>  <td>!</td><td>\"</td><td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"    \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FullNameInUnspecifiedIdentityType-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of sender - \"U\" for Unspecified(whether Individual or Company).\n",
            "enum": [
              "U"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth-1"
              }
            ],
            "exampleSetFlag": false
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-6"
              }
            ],
            "exampleSetFlag": false
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/UnspecifiedTypeSenderIdentificationListAccountWallet-1"
          }
        },
        "exampleSetFlag": false
      },
      "403ErrorResponseObject": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The short description of the error."
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "type": "integer",
            "description": "3 digit HTTP status code",
            "example": 403
          },
          "details": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "A short code indicating the specific error that occurred."
                },
                "message": {
                  "type": "string",
                  "description": "The long description of the specific error that occurred."
                },
                "location": {
                  "type": "string",
                  "description": "The place in the incoming message that the particular error occurred."
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "The long description of the error"
          }
        }
      },
      "AFTRResponseTransactionDetail": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTRServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "AccountSenderTypeIsUnspecified-2": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Sender name. Full name is conditionally required when \"firstName\" and \"lastName\" are not provided. <br>Must have at least 3 chars<br>Must not contain exclusively numeric characters<br>Must not contain special symbols<br><table>  <tr>  <td>!</td><td>\"</td><td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"    \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FullNameInUnspecifiedIdentityType"
              }
            ]
          },
          "type": {
            "type": "string",
            "description": "Identifies the type of sender - \"U\" for Unspecified(whether Individual or Company).\n",
            "enum": [
              "U"
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/UnspecifiedTypeSenderIdentificationListAccountWallet-2"
          }
        }
      },
      "RecipientAccountPayoutAddress-2": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "AccountQueryOnlyErrorResponse-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "errorDetails": {
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-5"
                },
                "exampleSetFlag": false,
                "types": [
                  "array"
                ]
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is accepted and will be processed & notified status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RecipientAccountPayoutAddress-1": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          },
          "buildingNumber": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BuildingNumber"
              }
            ]
          },
          "subDivisionMinorCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SubDivisionMinorCode"
              }
            ]
          }
        }
      },
      "PaymentFacilitatorCity": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "City of the payment facilitator",
        "example": "City Name"
      },
      "NetworkResponseVauData-1": {
        "type": "object",
        "properties": {
          "vauFlag": {
            "$ref": "#/components/schemas/VauFlag-1"
          },
          "accountStatus": {
            "$ref": "#/components/schemas/AccountStatus-1"
          },
          "vauErrorReasonCode": {
            "$ref": "#/components/schemas/VauErrorReasonCode-1"
          },
          "replacementCardAccountNumber": {
            "$ref": "#/components/schemas/ReplacementCardAccountNumber-1"
          },
          "replacementCardExpirationDate": {
            "$ref": "#/components/schemas/ReplacementCardExpirationDate-1"
          }
        }
      },
      "QueryResponse-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-1"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-1"
          }
        ]
      },
      "QueryResponse-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-3"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-3"
          }
        ]
      },
      "QueryResponse-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-4"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-4"
          }
        ]
      },
      "PaymentInstrumentAccountHolder": {
        "required": [
          "lastName"
        ],
        "type": "object",
        "properties": {
          "lastName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Last name of the account holder\n"
          },
          "firstName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "First name of the account holder\n"
          },
          "middleName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Middle name of the account holder\n"
          }
        }
      },
      "QueryResponse-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-9"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-9"
          }
        ]
      },
      "403ErrorResponseWithKey": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/403ErrorResponseWithKey"
              }
            ]
          }
        }
      },
      "QueryResponse-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-10"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-10"
          }
        ]
      },
      "LockQuoteRequest": {
        "required": [
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          }
        }
      },
      "QueryResponse-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-5"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-5"
          }
        ]
      },
      "QueryResponse-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-6"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-6"
          }
        ]
      },
      "QueryResponse-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-7"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-7"
          }
        ]
      },
      "QueryResponse-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-8"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-8"
          }
        ]
      },
      "WalletQueryOnlySuccessResponse-11": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/TransactionStatus-1"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-3"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-7"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-6"
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-6"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails-3"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "DafIndicator": {
        "maxLength": 5,
        "type": "string",
        "description": "DAF indicator"
      },
      "AdditionalDataValue": {
        "maxLength": 100,
        "minLength": 1,
        "type": "string",
        "description": "Value of the field."
      },
      "CustomProgramData": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "merchantReference": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator"
          },
          "pointOfServiceData": {
            "$ref": "#/components/schemas/PointOfServiceData"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "DigitalAssetQueryErrorResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR                -"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "errorDetails": {
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-5"
                },
                "exampleSetFlag": false,
                "types": [
                  "array"
                ]
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is accepted and will be processed & notified status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetQueryErrorResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR                -"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-4"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "DigitalAssetQueryErrorResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR                -"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "SchemeIdentifier-1": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Defines the card scheme selected of a co-badged cards for the transaction.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>01 – Visa</li>\n  <li>02 – Other</li>\n</ul>",
        "example": "01",
        "enum": [
          "01",
          "02"
        ]
      },
      "WalletQueryOnlySuccessResponse-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-6"
                  }
                ],
                "exampleSetFlag": false
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel-1"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-6"
                  }
                ],
                "exampleSetFlag": false
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-3"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-5"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails-2"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId-1"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "CountryOfBirth": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Country of birth of the recipient"
      },
      "TransactionType": {
        "maxLength": 30,
        "minLength": 2,
        "type": "string",
        "description": "Type of the transaction"
      },
      "CardPayoutRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-10"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-10"
          }
        ]
      },
      "LimitReachedFlexibleSettlementNotification": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "limitReachedDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "LIMIT_REACHED"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "limitReachedDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LimitReachedDetails"
            }
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "SenderName": {
        "maxLength": 30,
        "minLength": 2,
        "type": "string",
        "description": "Full name of sender. Conditionally required when \"firstName\" and \"lastName\" are not provided. Must not contain exclusively numeric characters. Must not contain special symbols. Represents sender company name if sender is a company.\n",
        "example": "John Smith"
      },
      "CardPayoutRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-12"
          }
        ]
      },
      "AccountQueryOnlyResponse-14": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse-9"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse-8"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse-2"
          }
        ],
        "exampleSetFlag": false
      },
      "VAUData": {
        "type": "object",
        "properties": {
          "vauFlag": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Recipient primary account number Visa Account Updater (VAU) flag\n\nNote: Possible values are : Y (replacement occurred) N (No replacements)\n\nISO20022 field name: N/A\n"
          },
          "accountStatus": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Indicates recipient account status. Possible values are C (closed account) or Q (contact cardholder)\n\nISO20022 field name: N/A\n"
          },
          "vauErrorReasonCode": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Indicates the reason the VAU failed\nPossible values: \n* VAU_SUCCESS\n* VAU_FAILED\n* VAU_PAN_TKN_SUCCESS\n* VAU_PAN_TKN_FAILED\n* VAU_PPCS_SUCCESS\n* VAU_PPCS_FAILED\n\nISO20022 field name: N/A\n"
          },
          "replacementCardAccountNumber": {
            "maxLength": 19,
            "minLength": 6,
            "type": "string",
            "description": "Contains the recipient replacement primary account number, if it exists\n\nISO20022 field name: N/A\n"
          },
          "replacementCardExpirationDate": {
            "maxLength": 7,
            "minLength": 7,
            "type": "string",
            "description": "Contains the recipient replacement primary account number expiration date, if it exists. This is returned even if the expiration date was not passed in the request.\n\nFormat: YYYY-MM\n\nISO20022 field name: N/A\n"
          }
        }
      },
      "CardPayoutRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-11"
          }
        ]
      },
      "AccountQueryOnlyResponse-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse-10"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse-8"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse-3"
          }
        ],
        "exampleSetFlag": false
      },
      "CardPayoutRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-14"
          }
        ]
      },
      "AccountQueryOnlyResponse-16": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse-11"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse-4"
          }
        ]
      },
      "CardPayoutRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-13"
          }
        ]
      },
      "CardPayoutRequest-16": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-16"
          }
        ]
      },
      "CardPayoutRequest-15": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-15"
          }
        ]
      },
      "400ErrorResponses": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "AccountQueryOnlyResponse-13": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse-5"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "AccountPayoutRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-9"
          }
        ]
      },
      "AccountPayoutRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-7"
          }
        ]
      },
      "AccountPayoutRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-8"
          }
        ]
      },
      "AccountPayoutRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-5"
          }
        ]
      },
      "PayoutNotification": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout"
          }
        ]
      },
      "AccountPayoutRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-6"
          }
        ]
      },
      "BIC": {
        "maxLength": 11,
        "minLength": 8,
        "type": "string",
        "description": "Business Identifier Code (BIC) of the Sponsor FI (Acquirer)\n\nISO20022 field name: Debtor Agent FI BIC\n"
      },
      "AccountPayoutRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-3"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-4"
          }
        ]
      },
      "AccountPayoutRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-1"
          }
        ]
      },
      "MexicoNationalServiceData": {
        "required": [
          "reimbursementFee",
          "reimbursementFeeTax"
        ],
        "type": "object",
        "properties": {
          "irfType": {
            "maxLength": 1,
            "minLength": 1,
            "type": "number",
            "format": "string"
          },
          "accountType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "number",
            "format": "string"
          },
          "irfCategoryCode": {
            "maxLength": 2,
            "minLength": 1,
            "type": "number",
            "format": "string"
          },
          "merchantFiscalId": {
            "maxLength": 13,
            "minLength": 1,
            "type": "number",
            "format": "string"
          },
          "reimbursementFee": {
            "type": "number",
            "description": "Fee amount for reimbursement",
            "format": "double",
            "example": 1.5
          },
          "reimbursementFeeTax": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "AccountPayoutRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-4"
          }
        ]
      },
      "accountVerificationRequired": {
        "type": "boolean",
        "description": "Indicates whether account verification services are required.If True, account will be verified.If False, account verification will be skipped. Applicable only for Accounts."
      },
      "IndividualSenderIdentificationListAccount-1": {
        "description": "Identification list of sender",
        "items": {
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \nValid values : \n* P- Passport \n* D-Driving License\n* N-National Id\n* T-Tax Id\n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeAccount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "AFTRequestData-18": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-18"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-11"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-11"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-18"
          }
        }
      },
      "AFTRequestData-16": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-16"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-16"
          }
        }
      },
      "AccountQueryOnlyResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "AFTRequestData-11": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-11"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-11"
          }
        }
      },
      "AFTRequestData-10": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-9"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-4"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-5"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-9"
          }
        }
      },
      "AFTRequestData-15": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-8"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-9"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-9"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-7"
          }
        }
      },
      "AFTRequestData-14": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-8"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-8"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-8"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-7"
          }
        }
      },
      "AFTRequestData-13": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-8"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-7"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-7"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-7"
          }
        }
      },
      "IndividualSenderIdentificationListAccount-2": {
        "description": "Identification list of sender",
        "items": {
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \nValid values : \n* P- Passport \n* D-Driving License\n* N-National Id\n* T-Tax Id\n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeAccount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "AFTRequestData-12": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-8"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-6"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-6"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-7"
          }
        }
      },
      "IndividualSenderIdentificationListAccount-3": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \nValid values : \n* P- Passport \n* D-Driving License\n* N-National Id\n* T-Tax Id\n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "S2AMetaData-14": {
        "required": [
          "recipientDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "recipientDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientDetailMetadata-2"
              }
            ]
          },
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionDetailMetadata-14"
              }
            ]
          }
        }
      },
      "ValidatePayoutDigitalAssetRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest"
          }
        ]
      },
      "AFTROriginatorDetail-1": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTRCardAcceptor-1"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Account Funding Transaction Reversal"
      },
      "AFTROriginatorDetail-2": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTRCardAcceptor-2"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        },
        "description": "Originator details for Account Funding Transaction Reversal"
      },
      "AFTROriginatorDetail-3": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-2"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTRCardAcceptor-3"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode-1"
          }
        },
        "description": "Originator details for Account Funding Transaction Reversal"
      },
      "AFTROriginatorDetail-4": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-3"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTRCardAcceptor-3"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode-1"
          }
        },
        "description": "Originator details for Account Funding Transaction Reversal"
      },
      "NearLimitReachedDetails": {
        "required": [
          "currencyCode",
          "flexibleAmountLimit",
          "flexibleAmountRemaining",
          "flexibleAmountUtilized"
        ],
        "type": "object",
        "properties": {
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "flexibleAmountLimit": {
            "$ref": "#/components/schemas/FlexibleAmountLimit"
          },
          "flexibleAmountUtilized": {
            "$ref": "#/components/schemas/FlexibleAmountUtilized"
          },
          "flexibleAmountRemaining": {
            "$ref": "#/components/schemas/FlexibleAmountRemaining"
          }
        }
      },
      "OCTCardAcceptorAddress": {
        "required": [
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "City of card acceptor"
          },
          "state": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "State or province of card acceptor"
          },
          "county": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "County of card acceptor"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Country of card acceptor"
          },
          "postalCode": {
            "maxLength": 9,
            "minLength": 1,
            "type": "string",
            "description": "Postal or zip code of card acceptor"
          },
          "addressLine": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Street address of card acceptor"
          }
        },
        "description": "Card acceptor address for Original Credit Transaction"
      },
      "SourceCurrencyCode": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string"
      },
      "CompanyRecipientIdentificationListAccount-2": {
        "description": "Identification list of recipient",
        "items": {
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id \n* L-Legal Entity Registration Number \n* I-Legal Entity Identifier (LEI) Number. \n\nLegal Entity Identifier is a unique identification of legal entities participating in financial transactions and other official interactions maintained in a global directory by the Global Legal Entity Identifier Foundation (GLEIF). This field can only be used for specific routes (Refer to Visa Direct Endpoint Guide on country approval).Format: [A-Z0-9]{18,18}[0-9]{2,2}. ID issue country must NOT be provided when ID type is LEI.            \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeAccount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "CompanyRecipientIdentificationListAccount-3": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id \n* L-Legal Entity Registration Number \n* I-Legal Entity Identifier (LEI) Number. \n\nLegal Entity Identifier is a unique identification of legal entities participating in financial transactions and other official interactions maintained in a global directory by the Global Legal Entity Identifier Foundation (GLEIF). This field can only be used for specific routes (Refer to Visa Direct Endpoint Guide on country approval).Format: [A-Z0-9]{18,18}[0-9]{2,2}. ID issue country must NOT be provided when ID type is LEI.            \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "CompanyRecipientIdentificationListAccount-1": {
        "description": "Identification list of recipient",
        "items": {
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id \n* L-Legal Entity Registration Number \n* I-Legal Entity Identifier (LEI) Number. \n\nLegal Entity Identifier is a unique identification of legal entities participating in financial transactions and other official interactions maintained in a global directory by the Global Legal Entity Identifier Foundation (GLEIF). This field can only be used for specific routes (Refer to Visa Direct Endpoint Guide on country approval).Format: [A-Z0-9]{18,18}[0-9]{2,2}. ID issue country must NOT be provided when ID type is LEI.            \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeAccount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "WalletPayoutRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-3"
          }
        ]
      },
      "WalletPayoutRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-3"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-4"
          }
        ]
      },
      "CurrentDueDetails": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          }
        }
      },
      "WalletPayoutRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest"
          }
        ]
      },
      "WalletPayoutRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-2"
          }
        ]
      },
      "WalletPayoutRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-7"
          }
        ]
      },
      "RouteDefinitionChangePerCountryClusterAndCurrency-1": {
        "required": [
          "metadataVersion",
          "metadataVersionDate",
          "notificationId",
          "notificationType",
          "payoutMethod",
          "recipientCountryCluster",
          "recipientCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Payout method code. Valid value is B- bank.\n",
            "enum": [
              "B"
            ]
          },
          "notificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique identifier for the notification.\n",
            "example": "58e0a7d7-eebc-11d8-9669-0800200c9a66"
          },
          "metadataVersion": {
            "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
            "type": "string",
            "description": "This is the version of the updated route definition. \nIt is in the format <major-version>.<minor-version>.<patch>.\n\n* patch updates are documentation updates only and should not influence the processing of a payout transaction. Example: changes to the description of Purpose of Payment code.\n\n* minor-version updates indicate backward compatible changes in the route validation rules on a payout transaction. Example: addition of a new Purpose of Payment code.\n\n* major-version updates indicate backward incompatible changes in the route validation rules on a payout transaction. Such changes are usually regulatory in nature or due to partner migration on Visa's backend. Example: Purpose of Payment code changing from a \"conditional\"/ \"recommended\" to a \"required\" field.\n",
            "example": "1.0.0"
          },
          "notificationType": {
            "type": "string",
            "description": "Notification Type. Valid value- LIVE_UPDATE, FUTURE_UPDATE (This ENUM is not currently supported. It is for future use.) ROUTE_DISCONTINUED",
            "enum": [
              "LIVE_UPDATE",
              "FUTURE_UPDATE",
              "ROUTE_DISCONTINUED"
            ]
          },
          "metadataVersionDate": {
            "type": "string",
            "description": "This is the date when the metadata version will go live.\n",
            "format": "date"
          },
          "recipientCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-4217 (Alpha-3) currency code\n",
            "example": "USD"
          },
          "recipientCountryCluster": {
            "type": "string",
            "description": "Country Cluster code-valid values are SEPA, CEMAC, UEMOA\n",
            "enum": [
              "SEPA",
              "CEMAC",
              "UEMOA"
            ]
          }
        }
      },
      "ValidatePayoutDigitalAssetRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-8"
          }
        ],
        "exampleSetFlag": false
      },
      "WalletPayoutRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-8"
          }
        ]
      },
      "WalletPayoutRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-3"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-5"
          }
        ]
      },
      "ValidatePayoutDigitalAssetRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-6"
          }
        ]
      },
      "WalletPayoutRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-6"
          }
        ]
      },
      "ValidatePayoutDigitalAssetRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-7"
          }
        ]
      },
      "ValidatePayoutDigitalAssetRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-4"
          }
        ]
      },
      "ValidatePayoutDigitalAssetRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-5"
          }
        ]
      },
      "ValidatePayoutDigitalAssetRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-2"
          }
        ]
      },
      "WalletPayoutRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-9"
          }
        ]
      },
      "ValidatePayoutDigitalAssetRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-3"
          }
        ]
      },
      "CardVerificationDetail": {
        "required": [
          "verificationResult"
        ],
        "type": "object",
        "properties": {
          "nameMatch": {
            "type": "string",
            "description": "This field will contain the decision of the account First name matching performed by Account Name. When requestedVerification includes \"name\", then it is displayed.\n",
            "enum": [
              "MATCH",
              "PARTIAL_MATCH",
              "NO_MATCH",
              "NOT_PERFORMED",
              "NOT_SUPPORTED"
            ]
          },
          "approvalCode": {
            "maxLength": 6,
            "minLength": 1,
            "type": "string",
            "description": "Approval code from the Issuer\n"
          },
          "cvcResultCode": {
            "type": "string",
            "description": "Result of the CVV2 validation for the primaryAccountNumber in the request.\n",
            "enum": [
              "MATCH",
              "NO_MATCH",
              "NOT_PERFORMED"
            ]
          },
          "lastNameMatch": {
            "type": "string",
            "description": "This field will contain the decision of the account last name matching performed by Account Name. When requestedVerification includes \"name\", then it is displayed.\n",
            "enum": [
              "MATCH",
              "PARTIAL_MATCH",
              "NO_MATCH"
            ]
          },
          "firstNamematch": {
            "type": "string",
            "description": "This field will contain the decision of the account First name matching performed by Account Name .When requestedVerification includes \"name\" and first Name, then it is displayed.\n",
            "enum": [
              "MATCH",
              "PARTIAL_MATCH",
              "NO_MATCH"
            ]
          },
          "middleNameMatch": {
            "type": "string",
            "description": "This field will contain the decision of the account Middle name matching performed by Account Name .When requestedVerification includes \"name\" and middle name, then it is displayed.\n",
            "enum": [
              "MATCH",
              "PARTIAL_MATCH",
              "NO_MATCH"
            ]
          },
          "verificationResult": {
            "required": [
              "value"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "card verification result\n",
                "enum": [
                  "VALID",
                  "INVALID"
                ]
              },
              "invalidReason": {
                "type": "string",
                "description": "Reason why card is invalid\n",
                "enum": [
                  "UNKNOWN",
                  "LOST_CARD",
                  "STOLEN_CARD",
                  "EXPIRED_CARD",
                  "INVALID_ACCOUNT",
                  "CLOSED_ACCOUNT",
                  "CVV2_FAILURE",
                  "FRAUD",
                  "SUSPECTED_FRAUD",
                  "RESTRICTED_CARD",
                  "INVALID_CVV"
                ]
              }
            }
          },
          "identityVerification": {
            "type": "array",
            "description": "array of identity verification results\n",
            "items": {
              "required": [
                "idType",
                "idVerificationResult"
              ],
              "type": "object",
              "properties": {
                "idType": {
                  "type": "string",
                  "description": "Account holder id type\n",
                  "enum": [
                    "NATIONALIDENTITY",
                    "PASSPORT",
                    "DRIVERLICENSE",
                    "TAX"
                  ]
                },
                "idVerificationResult": {
                  "type": "string",
                  "description": "identity verification Result\n",
                  "enum": [
                    "VERIFIED",
                    "NOT_PERFORMED",
                    "FAILED",
                    "NOT_SUPPORTED"
                  ]
                }
              }
            }
          },
          "phoneVerificationResult": {
            "type": "string",
            "description": "Card holder phone verification result from the issuer. When requestedVerification includes \"phone\" and phone is present in the request, then it is displayed\n",
            "enum": [
              "VERIFIED",
              "NOT_PERFORMED",
              "FAILED"
            ]
          },
          "cardAuthenticationResult": {
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method result.\n",
            "enum": [
              "VERIFIED,",
              "FAILED",
              "NOT_PERFORMED"
            ]
          },
          "addressVerificationResult": {
            "type": "string",
            "description": "Result of the Address Verification Service (AVS) validation for the Primary account number in the request when requested.\n",
            "enum": [
              "MATCH",
              "PARTIAL_MATCH_POSTALCODE",
              "PARTIAL_MATCH_STREETADDRESS",
              "NOT_VERIFIED",
              "NOT_VERIFIED_RETRY"
            ]
          },
          "emailAddressVerificationResult": {
            "type": "string",
            "description": "Card holder Email Address Verification Results from the issuer. When requestedVerification includes \"emailAddress\" and emailAddress , then it is displayed\n",
            "enum": [
              "VERIFIED",
              "NOT_PERFORMED",
              "FAILED"
            ]
          },
          "cardholderAuthenticationVerificationResult": {
            "type": "string",
            "description": "If TAVV is provided in the request, its validation result will be provided in this field.\n\n For future: This field will be extended to provide validation result for Cardholder Authentication Verification Value (CAVV) if it appears in the request.\n Refer to CAVV Results Codes.\n Note: For E-Commerce transactions containing token data, this attribute must be present with a value of 0, 1, or 2. If the TAVV fails validation, this attribute will have TAVV validation result with a value of 1.\n",
            "enum": [
              "VERIFIED,",
              "FAILED",
              "NOT_PERFORMED"
            ]
          }
        },
        "description": "Details of Card verificaiton results\n"
      },
      "RecipientIndividual": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "ValidatePayoutDigitalAssetRequestAltered-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-6"
          }
        ]
      },
      "ValidatePayoutDigitalAssetRequestAltered-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-5"
          }
        ]
      },
      "SenderCard": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "expirationDate"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/PosData-1"
          },
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Conditional-Required to be sent along with \"PCI_TOKEN_REFID\""
          },
          "accountType": {
            "type": "string",
            "description": "This is used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.<br>00-Not applicable<br>10-Saving account<br>20-Checking account<br>30-Credit card account<br>40-Universal account",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "If type is PAYNAME then length should be between 6 and 50 characters.Format should be +payname.domain. The payname, between '+' and '.' characters, should be minimum 3 characters.<br> For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"merchantId\". <br>For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "schemeIdentifier": {
            "$ref": "#/components/schemas/SchemeIdentifier"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT",
              "ALIAS",
              "PCI_TOKEN_REFID",
              "PAYNAME"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/AuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData-1"
          }
        }
      },
      "ValidatePayoutDigitalAssetRequestAltered-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-4"
          }
        ]
      },
      "ValidatePayoutDigitalAssetRequestAltered-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-3"
          }
        ]
      },
      "SenderFirstName-1": {
        "maxLength": 35,
        "minLength": 2,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nSender first name. ISO20022 field name: Debtor First Name.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Alphabetic characters only. May include spaces or hyphens.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Required when senderDetail.name is not provided</li>\n  <li>The length of first name and last name combined must be at least 3 characters</li>\n  <li>Must not contain exclusively numeric characters</li>\n  <li>Must not contain special symbols</li>\n</ul>",
        "example": "John"
      },
      "ValidatePayoutDigitalAssetRequestAltered-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-9"
          }
        ],
        "exampleSetFlag": false
      },
      "ValidatePayoutDigitalAssetRequestAltered-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail-1"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-8"
          }
        ],
        "exampleSetFlag": false
      },
      "ValidatePayoutDigitalAssetRequestAltered-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-7"
          }
        ]
      },
      "CompanyIdTypeWallet-3": {
        "type": "string",
        "description": "When present, this field contains the type of identification document.\n\nValid values:\n* `T` - Tax Id\n* `L` - Legal Entity Registration Number\n",
        "example": "T",
        "enum": [
          "T",
          "L"
        ]
      },
      "CompanyIdTypeWallet-2": {
        "description": "When present, this field contains the type of identification document.\n\nValid values:\n* `T` - Tax Id\n* `L` - Legal Entity Registration Number\n",
        "example": "P",
        "enum": [
          "T",
          "L"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "PushCard-1": {
        "required": [
          "accountNumber"
        ],
        "type": "object",
        "properties": {
          "vauFlag": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "If present, a valid value is required. Spaces or special characters are not allowed. Possible values are : Y (will cause VAU to be performed)\n\nISO20022 field name: N/A\n"
          },
          "accountType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.\n\n00-Not applicable\n\n10-Saving account\n\n20-Checking account\n\n30-Credit card account\n\n40-Universal account\n\nDefault is set to \"00\" if not provided.\n",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "pattern": "^\\d*$",
            "type": "string",
            "description": "Recipient primary account number, or token account number\n\nISO20022 field name: N/A\n"
          },
          "expirationDate": {
            "maxLength": 7,
            "minLength": 7,
            "pattern": "YYYY-MM",
            "type": "string",
            "description": "Conditional\nThis field contains the expiration date for the recipient's primary account number or token in recipientPrimaryAccountNumber.\nNote: Visa requires expiration date to be present in all OCTs destined to U.S. issuers\nFormat: YYYY-MM\nExample: 2021-10\n\nISO20022 field name: N/A\n",
            "example": "2022-01"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, when posConditionCode is 59\n"
          }
        }
      },
      "ValidatePayoutDigitalAssetRequestAltered-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-2"
          }
        ]
      },
      "AccountPayoutOnlyRequest": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest"
          }
        ]
      },
      "CardAcceptor": {
        "required": [
          "id",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Card acceptor ID"
          },
          "name": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Name of the card acceptor"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress"
          },
          "terminalId": {
            "maxLength": 8,
            "type": "string",
            "description": "Identifier for the terminal at the card acceptor location",
            "example": "TERM1234"
          },
          "legalBusinessName": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Legal business name of the card acceptor"
          },
          "paymentFacilitator": {
            "type": "object",
            "properties": {
              "id": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "Payment facilitator ID",
                "example": "PF123456789"
              },
              "name": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "Payment facilitator name",
                "example": "Payment Facilitator Inc"
              },
              "address": {
                "type": "object",
                "properties": {
                  "city": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string",
                    "description": "City",
                    "example": "San Francisco"
                  },
                  "state": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "State code",
                    "example": "CA"
                  },
                  "country": {
                    "maxLength": 3,
                    "minLength": 3,
                    "type": "string",
                    "description": "Country code",
                    "example": "USA"
                  },
                  "postalCode": {
                    "maxLength": 10,
                    "minLength": 5,
                    "type": "string",
                    "description": "Postal code",
                    "example": "94105"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address line",
                    "example": "123 Market St"
                  }
                }
              },
              "submerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Submerchant ID",
                "example": "SUB123456789012"
              }
            }
          },
          "merchantCategoryCode": {
            "type": "number",
            "description": "Merchant category code"
          },
          "merchantVerificationValue": {
            "maxLength": 10,
            "minLength": 10,
            "type": "string",
            "description": "Merchant verification value"
          }
        }
      },
      "ValidatePayoutDigitalAssetRequestAltered-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-1"
          }
        ]
      },
      "AccountVerificationDetail-1": {
        "type": "object",
        "properties": {
          "bankCode": {
            "type": "string",
            "description": "Bank code associated with the verified account, if returned by the account verification service provider.",
            "nullable": true
          },
          "nameMatch": {
            "$ref": "#/components/schemas/nameMatch"
          },
          "accountType": {
            "type": "string",
            "description": "Type of account, if returned by the account verification service provider.",
            "nullable": true
          },
          "currencyCodes": {
            "type": "array",
            "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.\n",
            "example": [
              "USD",
              "GBP",
              "EUR"
            ],
            "items": {
              "$ref": "#/components/schemas/AlphaCurrencyCode"
            }
          },
          "bankAccountName": {
            "type": "string",
            "description": "Field to indicate the actual name of the accountholder (if provided by account verification service provider).\n",
            "nullable": true,
            "example": "John Doe"
          },
          "verificationDetails": {
            "type": "object",
            "properties": {
              "code": {
                "type": "string",
                "description": "Response/error code to convey to client what went wrong in case of COMPLETED and account not matched and NOT_COMPLETED as well.",
                "example": "2100"
              },
              "message": {
                "type": "string",
                "description": "Message corresponding to the above code.",
                "example": "Account identifier does not match"
              },
              "location": {
                "type": "string",
                "description": "To share the location.",
                "nullable": true,
                "example": "Server A"
              }
            },
            "nullable": true
          },
          "accountIdentifierMatch": {
            "type": "string",
            "description": "Indicates if the account identifier provided matches the recipient's bank account identifier found.\n- YES: Match\n- NO: No Match\n",
            "nullable": true,
            "enum": [
              "YES",
              "NO"
            ]
          },
          "bankAccountHolderLastName": {
            "type": "string",
            "description": "Last name of the account holder, if returned by the account verification service provider.",
            "nullable": true
          },
          "bankAccountHolderFirstName": {
            "type": "string",
            "description": "First name of the account holder, if returned by the account verification service provider.",
            "nullable": true
          },
          "bankAccountNameTranslation": {
            "type": "string",
            "description": "Account HolderName Translated from the source language to english.\n",
            "nullable": true,
            "example": "Wang Li"
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED"
      },
      "ValidatePayoutAccountOnlyRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-1"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-1"
          }
        ]
      },
      "QueryTransactionDetail-11": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate"
          },
          "settlementinfo": {
            "type": "object",
            "properties": {
              "givUpdatedFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              },
              "settlementAmount": {
                "type": "number",
                "description": "Transaction amount converted in settlement currency",
                "format": "bigDecimal"
              },
              "settlementServiceFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are: <br>0 - International Settlement<br>9 - VIP to decide<br>8 - National Settlement<br>"
              },
              "settlementCurrencyCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "integer",
                "description": "Settlement Currency code."
              },
              "givPreviouslyUpdatedFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              },
              "settlementConversionRate": {
                "type": "number",
                "description": "Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency",
                "format": "bigDecimal"
              },
              "settlementResponsibilityFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              }
            },
            "description": "Settlement information for the transaction"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "ValidatePayoutAccountOnlyRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-7"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-2"
          }
        ]
      },
      "StatementNarrative": {
        "maxLength": 140,
        "minLength": 1,
        "type": "string",
        "description": "Originating Entity is advised to provide a narrative that helps the recipient clearly identify the sender and reason for the payment. Text will be displayed on the recipient’s statement when the payment gets posted to the recipient’s account or wallet statement. \nNot all wallet operators support a statement narrative.\n\nConditional - (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths).\n\nISO20022 field name: Remittance Information Unstructured\n",
        "example": "testing narrative"
      },
      "ValidatePayoutAccountOnlyRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-2"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-2"
          }
        ]
      },
      "ValidatePayoutAccountOnlyRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-3"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-3"
          }
        ]
      },
      "ValidatePayoutAccountOnlyRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-6"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-4"
          }
        ]
      },
      "QueryTransactionDetail-16": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate"
          },
          "settlementinfo": {
            "type": "object",
            "properties": {
              "givUpdatedFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              },
              "settlementAmount": {
                "type": "number",
                "description": "Transaction amount converted in settlement currency",
                "format": "bigDecimal"
              },
              "settlementServiceFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are: <br>0 - International Settlement<br>9 - VIP to decide<br>8 - National Settlement<br>"
              },
              "settlementCurrencyCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "integer",
                "description": "Settlement Currency code."
              },
              "givPreviouslyUpdatedFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              },
              "settlementConversionRate": {
                "type": "number",
                "description": "Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency",
                "format": "bigDecimal"
              },
              "settlementResponsibilityFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              }
            },
            "description": "Settlement information for the transaction"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "QueryTransactionDetail-18": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse-9"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "ValidatePayoutAccountOnlyRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-10"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-5"
          }
        ]
      },
      "AccountSenderIsCompany": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanySenderIdentificationListAccount"
          }
        }
      },
      "DelegatedAuthenticationIndicator": {
        "type": "string",
        "description": "Delegated authentication indicator, valid values \"true\" or \"false\"",
        "enum": [
          "true",
          "false"
        ]
      },
      "PaymentFacilitatorId-1": {
        "maxLength": 11,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nPayment Facilitator ID or Marketplace ID (MasterCard). This field is required when a payment facilitator is involved or for all MasterCard transactions.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Alphanumeric.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the ID provided during Visa Direct enrollment.</li>\n  <li>This field is required when a payment facilitator is involved or for all MasterCard transactions.</li>\n</ul>",
        "example": "PF123456789"
      },
      "PayoutNotificationFailedRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-1"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "PayoutNotificationFailedRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "CompanyIdTypeWallet-1": {
        "description": "When present, this field contains the type of identification document.\n\nValid values:\n* `T` - Tax Id\n* `L` - Legal Entity Registration Number\n",
        "example": "T",
        "enum": [
          "T",
          "L"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AFTOriginatorDetail-11": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTOriginatorDetailAdditionalData-1"
            }
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        }
      },
      "WalletRecipientTransactorDetailWithID": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany"
          }
        ]
      },
      "PayoutNotificationFailedRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-2"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "RecipientAccountPayoutAddress-4": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "TransactionDetailMetadata-2": {
        "title": "TransactionDetail",
        "required": [
          "purposeOfPayment"
        ],
        "properties": {
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayments-3"
          }
        },
        "description": "TransactionDetail Object\n",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "TransactionDetailMetadata-1": {
        "title": "TransactionDetail",
        "required": [
          "purposeOfPayment"
        ],
        "type": "object",
        "properties": {
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayments-1"
          }
        },
        "description": "TransactionDetail Object                \n"
      },
      "RecipientAccountPayoutAddress-3": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          },
          "buildingNumber": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BuildingNumber"
              }
            ]
          },
          "subDivisionMinorCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SubDivisionMinorCode"
              }
            ]
          }
        }
      },
      "OCTCardResponseTokenData": {
        "type": "object",
        "properties": {
          "last4ofPAN": {
            "$ref": "#/components/schemas/Last4ofPAN"
          },
          "tokenAssuranceMethod": {
            "$ref": "#/components/schemas/TokenAssuranceMethod"
          },
          "additionalTokenRespInfo": {
            "$ref": "#/components/schemas/AdditionalTokenRespInfo"
          }
        }
      },
      "RecipientAccountPayoutAddress-5": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-2"
              }
            ]
          }
        }
      },
      "CardTransactionValidateDetail": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse  \n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              },
              "remoteCommerceAcceptorIdentifier": {
                "maxLength": 150,
                "minLength": 1,
                "type": "string",
                "description": "This field contains a merchant identifier encoded as Base64. For example website URL or reverse domain name.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "VerificationCardAcceptor": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Identifier for the card acceptor",
            "example": "Verification001"
          },
          "name": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Name of the cardAcceptor",
            "example": "Verification TEST"
          },
          "address": {
            "$ref": "#/components/schemas/VerificationCardAcceptorAddress"
          },
          "terminalId": {
            "maxLength": 8,
            "minLength": 1,
            "type": "string",
            "description": "The identifier for the terminal at a card acceptor location",
            "example": "TERM0001"
          }
        },
        "description": "The cardAcceptor is the merchant, funds transfer originator, or Visa internal application submitting the Payment Account Validation request"
      },
      "TransactionDetailMetadata-5": {
        "title": "TransactionDetail",
        "required": [
          "purposeOfPayment"
        ],
        "type": "object",
        "properties": {
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayments"
          }
        },
        "description": "TransactionDetail Object                \n"
      },
      "SchemeIdentifier": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Scheme identifier for the card, \"01\" Visa, \"02\" Other",
        "example": "01",
        "enum": [
          "01",
          "02"
        ]
      },
      "TransactionDetailMetadata-3": {
        "title": "TransactionDetail",
        "required": [
          "purposeOfPayment"
        ],
        "type": "object",
        "properties": {
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayments-2"
          }
        },
        "description": "TransactionDetail Object                \n"
      },
      "QueryResponseData": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail"
          }
        },
        "description": "Query response data structure"
      },
      "MerchantCategoryCode-1": {
        "type": "number",
        "description": "<b>Conditional</b><br><br>\nIf provided, then the value overrides the one present in onboarding data. If the merchantCategoryCode value is not populated in onboarding data then this field is mandatory. Format Allowed Characters: Numeric only (0–9).<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid MCC as defined by ISO 18245 or Visa/MasterCard specifications.</li>\n  <li>Required for all transactions to ensure proper categorization.</li>\n</ul>\n<b>Note:</b> required if not provided during onboarding",
        "example": 6011
      },
      "OCTTransactionDetail": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTTransactionDetailAdditionalData"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "description": "3-digit numeric or 3-character alpha ISO currency code of the transaction as expressed in the amount field. This can be either:<ul><li>The originator's chosen currency for the transaction OR</li><li>The recipient's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode.<br><b>*Note</b>: This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "DigitalAssetSenderTransactorDetailWithID": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetSenderIsIndividual"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetSenderIsCompany"
          }
        ]
      },
      "nameMatch-2": {
        "description": "Score provided based on recipient’s name match, if recipient’s account is found and active. Supports below values: STRONG_MATCH,PARTIAL_MATCH and NO_MATCH. STRONG_MATCH - Recipient’s account found and name is a highly confident match. PARTIAL_MATCH - Recipient’s account found and name is a partial match. NO_MATCH - Recipient’s account found but name is likely not a match. Applicable only for Accounts.\n",
        "enum": [
          "STRONG_MATCH",
          "PARTIAL_MATCH",
          "NO_MATCH"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "nameMatch-1": {
        "type": "string",
        "description": "Score provided based on recipient’s name match, if recipient’s account isfound and\nactive. Supports below values: STRONG_MATCH,PARTIAL_MATCH,NO_MATCH. STRONG_MATCH-\nRecipient’s account found and name is a highly confident match. PARTIAL_MATCH-\nRecipient’s account found and name is a partial match. NO_MATCH- Recipient’s account\nfound but name is likely not a match. Applicable only for Accounts.\n",
        "enum": [
          "STRONG_MATCH",
          "PARTIAL_MATCH",
          "NO_MATCH"
        ]
      },
      "AccountRecipientTransactorDetailWithID": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany"
          }
        ]
      },
      "RecipientDateOfBirth": {
        "type": "string",
        "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\"). ISO20022 field name: Creditor Birth Date.\n",
        "format": "date"
      },
      "ValidatePayoutResponse-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-4"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-4"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-10"
          }
        ]
      },
      "SpecialConditionIndicatorMerchant-1": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Cryptocurrency indicator with the value of “7” can be used to identify the purchase of cryptocurrency, thereby providing greater visibility to the issuers.\n  - 1 – Purchase of Central Bank Digital Currency (CBDC) or Tokenized Deposits\n  - 2 – Purchase of Stablecoin (fiat-backed)\n  - 3 – Purchase of Blockchain Native Token/Coin\n  - 4 – Purchase of Non-Fungible Token (NFT)\n  - 7* - Purchase of Cryptocurrency\n"
      },
      "SpecialConditionIndicatorMerchant-2": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Special condition indicator for merchant"
      },
      "ErrorResponse-5": {
        "required": [
          "details",
          "reason",
          "status"
        ],
        "properties": {
          "reason": {
            "description": "The short description of the error.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "description": "3 digit HTTP status code",
            "example": 400,
            "exampleSetFlag": true,
            "types": [
              "integer"
            ]
          },
          "details": {
            "items": {
              "required": [
                "code",
                "message"
              ],
              "properties": {
                "code": {
                  "description": "A short code indicating the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "message": {
                  "description": "The long description of the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "location": {
                  "description": "The place in the incoming message that the particular error occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "message": {
            "description": "The long description of the error",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ErrorResponse-4": {
        "required": [
          "details",
          "reason",
          "status"
        ],
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The short description of the error."
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "type": "integer",
            "description": "3 digit HTTP status code"
          },
          "details": {
            "type": "array",
            "items": {
              "required": [
                "code",
                "message"
              ],
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "A short code indicating the specific error that occurred."
                },
                "message": {
                  "type": "string",
                  "description": "The long description of the specific error that occurred."
                },
                "location": {
                  "type": "string",
                  "description": "The place in the incoming message that the particular error occurred."
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "The long description of the error"
          }
        }
      },
      "SpecialConditionIndicatorMerchant-3": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Cryptocurrency indicator with the value of \"7\" can be used to identify the purchase of cryptocurrency, thereby providing greater visibility to the issuers. Format Numeric or predefined codes<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>1 – Purchase of Central Bank Digital Currency (CBDC) or Tokenized Deposits</li>\n  <li>2 – Purchase of Stablecoin (fiat-backed)</li>\n  <li>3 – Purchase of Blockchain Native Token/Coin</li>\n  <li>4 – Purchase of Non-Fungible Token (NFT)</li>\n  <li>7* – Purchase of Cryptocurrency</li>\n</ul>",
        "example": "7"
      },
      "CardAcceptorName-1": {
        "maxLength": 25,
        "type": "string",
        "description": "Specifies the name of the card acceptor (merchant or entity) involved in the transaction. Format:<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Allowed Characters: Alphanumeric plus spaces and limited punctuation (e.g., hyphen, period).</li>\n  <li>Must match the merchant name provided during Visa Direct program enrollment.</li>\n  <li>Avoid special symbols beyond standard punctuation.</li>\n</ul>",
        "example": "ABC Retail Store"
      },
      "AccountQueryResponse-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-16"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-10"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse-5"
          }
        ],
        "exampleSetFlag": false
      },
      "AccountQueryResponse-16": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-17"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingResponse-1"
          }
        ]
      },
      "AccountQueryResponse-17": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-18"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-12"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse-4"
          }
        ]
      },
      "CardPayoutRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-4"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-4"
          }
        ]
      },
      "WalletQueryOnlySuccessResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQueryResponse-18": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-19"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-13"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse-6"
          }
        ],
        "exampleSetFlag": false
      },
      "CardPayoutRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-5"
          }
        ]
      },
      "WalletQueryOnlySuccessResponse-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQueryResponse-19": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-20"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse-7"
          }
        ]
      },
      "CardPayoutRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-6"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-6"
          }
        ]
      },
      "CardPayoutRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-7"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-7"
          }
        ]
      },
      "CancelCardPayoutResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "CardPayoutRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-8"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-8"
          }
        ]
      },
      "CardPayoutRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-9"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-9"
          }
        ]
      },
      "WalletQueryOnlySuccessResponse-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/TransactionStatus-5"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel-1"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-5"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-3"
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-5"
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-4"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails-1"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId-1"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "UnspecifiedTypeSenderIdentificationListAccountWallet": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/UnspecifiedIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "FundingModel": {
        "type": "string",
        "description": "The fundingModel to apply to this payout.",
        "enum": [
          "PREFUNDED"
        ]
      },
      "WalletQueryOnlySuccessResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "WalletQueryOnlySuccessResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-1"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "WalletQueryOnlySuccessResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-2"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "ValidatePayoutResponse-19": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-5"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-3"
          }
        ]
      },
      "ValidatePayoutResponse-18": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-10"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "CurrencyInfoFlexibleSettlementNotification-1": {
        "required": [
          "accountId",
          "currencyDetails",
          "eventType",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "CURRENCY_INFO"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "currencyDetails": {
            "items": {
              "$ref": "#/components/schemas/CurrencyDetails-1"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ServiceLocationCity": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "City of the service location",
        "example": "Service City"
      },
      "ValidatePayoutResponse-17": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-5"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-16"
          }
        ]
      },
      "CurrencyInfoFlexibleSettlementNotification-2": {
        "required": [
          "accountId",
          "currencyDetails",
          "eventType",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "CURRENCY_INFO"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "currencyDetails": {
            "items": {
              "$ref": "#/components/schemas/CurrencyDetails-2"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutResponse-16": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-7"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "ContactEmail-2": {
        "maxLength": 210,
        "minLength": 1,
        "description": "Contact Email.",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "ContactEmail-1": {
        "maxLength": 99,
        "minLength": 1,
        "type": "string",
        "description": "Contact email of the recipient"
      },
      "ValidatePayoutResponse-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-6"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "ErrorResponse-3": {
        "required": [
          "details",
          "reason",
          "status"
        ],
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The short description of the error."
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "type": "integer",
            "description": "3 digit HTTP status code",
            "example": 400
          },
          "details": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "A short code indicating the specific error that occurred."
                },
                "message": {
                  "type": "string",
                  "description": "The long description of the specific error that occurred."
                },
                "location": {
                  "type": "string",
                  "description": "The place in the incoming message that the particular error occurred."
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "The long description of the error"
          }
        }
      },
      "ValidatePayoutResponse-14": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-4"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "BeneficiaryRelationship-1": {
        "maxLength": 30,
        "minLength": 1,
        "description": "Sender's relationship with recipient",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "ErrorResponse-2": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "required": [
              "status"
            ],
            "type": "object",
            "properties": {
              "reason": {
                "type": "string",
                "description": "The short description of the error."
              },
              "status": {
                "type": "integer",
                "description": "3 digit http status code",
                "example": 400
              },
              "details": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "type": "string",
                      "description": "A short code indicating the specific error that occurred."
                    },
                    "message": {
                      "type": "string",
                      "description": "The long description of the specific error that occurred."
                    },
                    "location": {
                      "type": "string",
                      "description": "The place in the incoming message that the particular error occurred."
                    }
                  }
                }
              },
              "message": {
                "type": "string",
                "description": "The long description of the error."
              }
            }
          }
        }
      },
      "ValidatePayoutResponse-13": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-3"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-6"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-4"
          }
        ]
      },
      "ErrorResponse-1": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The short description of the error."
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "type": "integer",
            "description": "3 digit HTTP status code",
            "example": 400
          },
          "details": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "A short code indicating the specific error that occurred."
                },
                "message": {
                  "type": "string",
                  "description": "The long description of the specific error that occurred."
                },
                "location": {
                  "type": "string",
                  "description": "The place in the incoming message that the particular error occurred."
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "The long description of the error"
          }
        }
      },
      "ValidatePayoutResponse-11": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-7"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-2"
          }
        ]
      },
      "DigitalAssetValidatePayoutResponse-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "DigitalAssetValidatePayoutResponse-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-3"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-1"
          }
        ]
      },
      "ValidatePayoutResponse-20": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-4"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-4"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-8"
          }
        ]
      },
      "DigitalAssetValidatePayoutResponse-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-1"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "DigitalAssetValidatePayoutResponse-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-6"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "DigitalAssetValidatePayoutResponse-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-7"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "SourceAmount": {
        "type": "number",
        "format": "double"
      },
      "DigitalAssetValidatePayoutResponse-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-4"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-3"
          }
        ]
      },
      "PayoutFieldDefinition": {
        "required": [
          "$ref",
          "name",
          "presence"
        ],
        "type": "object",
        "properties": {
          "$ref": {
            "type": "string",
            "description": "this refers to a JSON Schema definition within the document"
          },
          "name": {
            "type": "string",
            "description": "If 'name' contains absolute JSON path (with '$' at the beginning), it defines the JSON path of the field; otherwise, concatenate \\<path\\>+ \".\" +\\<name\\> to form an absolute JSON path."
          },
          "path": {
            "type": "string",
            "description": "If provided the \\<path\\> + \".\" + \\<name\\> will form a JSONPath string."
          },
          "presence": {
            "type": "string",
            "description": "It defines the presence of the field. \nValid ENUM values:\n- required\n- recommended\n- conditional\n- optional\n",
            "enum": [
              "required",
              "recommended",
              "conditional",
              "optional"
            ]
          }
        }
      },
      "Nationality-2": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Specifies the recipient's nationality.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Must follow ISO 3166-1 alpha-3 standard</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid ISO 3166-1 alpha-3 country code</li>\n  <li>Uppercase alphabetic characters only (A–Z)</li>\n  <li>No spaces, numbers, or special characters</li>\n</ul>",
        "example": "USA"
      },
      "AdditionalDataName": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Name of the field."
      },
      "Nationality-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Nationality of the recipient"
      },
      "LockQuoteResponse": {
        "required": [
          "buyAmount",
          "buyCurrency",
          "exchangeRate",
          "quoteId",
          "quoteStatus",
          "sellAmount",
          "sellCurrency"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "description": "This field contains the unique number representing the FX Quote.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/QuoteId-1"
              }
            ]
          },
          "buyAmount": {
            "description": "The transaction amount in buy currency.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sellAmount": {
            "description": "The transaction amount in sell currency.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "buyCurrency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "quoteStatus": {
            "type": "string",
            "description": "A quote that is in LOCKED state should proceed to completion when funds are available.\nValue: \"LOCKED-IN\"\nExample: \"LOCKED-IN\"\n"
          },
          "exchangeRate": {
            "description": "This represents exchange rate between provided currencies.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ConversionRate"
              }
            ]
          },
          "sellCurrency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          }
        }
      },
      "PayoutNotificationFailedRequest": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "CardPayoutRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-1"
          }
        ]
      },
      "CardPayoutRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-2"
          }
        ]
      },
      "CardPayoutRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail-3"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-3"
          }
        ]
      },
      "OCTResponseData-14": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-16"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "OCTResponseData-13": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-15"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "ValidatePayoutResponse-27": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-8"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-14"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-17"
          }
        ]
      },
      "OCTResponseData-16": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-18"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "ValidatePayoutResponse-26": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-7"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-13"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-15"
          }
        ],
        "exampleSetFlag": false
      },
      "OCTResponseData-10": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-12"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "ValidatePayoutResponse-25": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-5"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-14"
          }
        ]
      },
      "OCTResponseData-12": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-14"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "ValidatePayoutResponse-23": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-6"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-12"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-12"
          }
        ],
        "exampleSetFlag": false
      },
      "OCTResponseData-11": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-13"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "FundingDetailsFundsNotReceived": {
        "required": [
          "currencyCode",
          "pullFundId",
          "pullFundsDetails",
          "totalAmountDue"
        ],
        "type": "object",
        "properties": {
          "pullFundId": {
            "type": "string",
            "description": "The pull fund id generated by Visa."
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "description": "Total amount due by due date. Pulled in this request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TotalAmountDue"
              }
            ]
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetailsFundsNotRceived"
          }
        }
      },
      "AccountQueryPendingOnlyCancelledResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "AccountQueryPendingOnlyCancelledResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-5"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "OCTRecipientCard-2": {
        "type": "object",
        "properties": {
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique Merchant Identification assigned by Token Service Provider.  Required if accountNumberType is PCI_TOKEN_REFID.\n",
            "example": "MERCHANT123"
          },
          "accountType": {
            "type": "string",
            "description": "Used to identify the account type of the recipient's primary account number in the request.  Possible values: 00 (Not applicable), 10 (Saving account), 20 (Checking account),  30 (Credit card account), 40 (Universal account). Default is 00.\n",
            "example": "30",
            "default": "00",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 128,
            "minLength": 1,
            "type": "string",
            "description": "Recipient's primary account number or token account number.  Required if paymentCredentialReference is not provided in the request.\n",
            "example": "4123456789012345"
          },
          "expirationDate": {
            "type": "string",
            "description": "Contains the expiration date for the recipient's primary account number or token.  Visa requires the expiration date to be present in all OCTs destined to U.S. issuers.  Format: YYYY-MM.\n",
            "format": "date"
          },
          "sequenceNumber": {
            "type": "number",
            "description": "Sequence number of the recipient's primary account number.  Required if paymentCredentialReference is not provided in the request.\n"
          },
          "schemeIdentifier": {
            "type": "string",
            "description": "The scheme identifier of the recipient's, 01 - Visa, 02 - Other\n",
            "enum": [
              "01",
              "02"
            ]
          },
          "accountNumberType": {
            "type": "string",
            "description": "Type of recipient account number. Possible values: DEFAULT, ALIAS, PCI_TOKEN_REFID, PAYNAME. If accountNumberType is PAYNAME, the length should be between 6 and 50 characters. Format should be +payname.domain. The payname, between '+' and '.' characters, should be minimum 3 characters.\n",
            "example": "DEFAULT",
            "enum": [
              "DEFAULT",
              "PCI_TOKEN_REFID",
              "PAYNAME"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/RecipientAuthenticationData"
          }
        },
        "description": "Card details of the recipient for Original Credit Transactions"
      },
      "OCTRecipientCard-3": {
        "type": "object",
        "properties": {
          "accountType": {
            "type": "string",
            "description": "Used to identify the account type of the recipient's primary account number in the request. If not provided, the default is 00 (Not applicable).<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>00 – Not applicable</li>\n  <li>10 – Saving account</li>\n  <li>20 – Checking account</li>\n  <li>30 – Credit card account</li>\n  <li>40 – Universal account</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Default is set to 00 if not provided.</li>\n</ul>",
            "example": "20 (Checking account)",
            "default": "00",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique Merchant Identification assigned by Token Service Provider.  Required if accountNumberType is PCI_TOKEN_REFID.\n",
            "example": "MERCHANT123"
          },
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string",
            "description": "<b>Conditional</b><br><br>\nRecipient's primary account number or token account number.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Required if paymentCredentialReference is not provided in the request.</li>\n</ul>",
            "example": "X111111111111111"
          },
          "expirationDate": {
            "type": "string",
            "description": "<b>Conditional</b><br><br>\nThis field contains the expiration date for the recipient's primary account number or token in recipientPrimaryAccountNumber. Visa requires the expiration date to be present in all OCTs destined to U.S. issuers. Format YYYY-MM<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must represent a valid expiration date in the specified format.</li>\n  <li>Month must be between 01 and 12.</li>\n  <li>Year must be current or future.</li>\n</ul>",
            "format": "date"
          },
          "sequenceNumber": {
            "type": "number",
            "description": "Sequence number of the recipient's primary account number.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid card sequence number associated with the recipient's primary account number.</li>\n  <li>Mandatory when paymentCredentialReference is absent.</li>\n  <li>Required if paymentCredentialReference is not provided in the request.</li>\n</ul>",
            "example": 1
          },
          "schemeIdentifier": {
            "type": "string",
            "description": "Defines the card scheme selected of a co-badged cards for the transaction.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>01 – Visa</li>\n  <li>02 – Other</li>\n</ul>",
            "enum": [
              "01",
              "02"
            ]
          },
          "accountNumberType": {
            "type": "string",
            "description": "Type of recipient account number.",
            "example": "DEFAULT",
            "enum": [
              "DEFAULT"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/RecipientAuthenticationData-1"
          }
        },
        "description": "Card details of the recipient for Original Credit Transactions"
      },
      "OCTRecipientCard-1": {
        "type": "object",
        "properties": {
          "accountType": {
            "type": "string",
            "description": "Used to identify the account type of the recipient's primary account number in the request.  Possible values: 00 (Not applicable), 10 (Saving account), 20 (Checking account),  30 (Credit card account), 40 (Universal account). Default is 00.\n",
            "example": "30",
            "default": "00",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique Merchant Identification assigned by Token Service Provider.  Required if accountNumberType is PCI_TOKEN_REFID.\n",
            "example": "MERCHANT123"
          },
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string",
            "description": "Recipient's primary account number or token account number.  Required if paymentCredentialReference is not provided in the request.\n",
            "example": "4123456789012345"
          },
          "expirationDate": {
            "type": "string",
            "description": "Contains the expiration date for the recipient's primary account number or token.  Visa requires the expiration date to be present in all OCTs destined to U.S. issuers.  Format: YYYY-MM.\n",
            "format": "date"
          },
          "sequenceNumber": {
            "type": "number",
            "description": "Sequence number of the recipient's primary account number.  Required if paymentCredentialReference is not provided in the request.\n"
          },
          "schemeIdentifier": {
            "type": "string",
            "description": "The scheme identifier of the recipient's, 01 - Visa, 02 - Other\n",
            "enum": [
              "01",
              "02"
            ]
          },
          "accountNumberType": {
            "type": "string",
            "description": "Type of recipient account number.\n",
            "example": "DEFAULT",
            "enum": [
              "DEFAULT"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/RecipientAuthenticationData"
          }
        },
        "description": "Card details of the recipient for Original Credit Transactions"
      },
      "AFTResponseCardVerificationResults-1": {
        "type": "object",
        "properties": {
          "cavvResultCode": {
            "$ref": "#/components/schemas/CavvResultCode-1"
          },
          "cvv2ResultCode": {
            "$ref": "#/components/schemas/Cvv2ResultCode-1"
          },
          "addressVerification": {
            "$ref": "#/components/schemas/AddressVerificationResult-1"
          }
        }
      },
      "VerificationCardHolder": {
        "type": "object",
        "properties": {
          "name": {
            "required": [
              "lastName"
            ],
            "type": "object",
            "properties": {
              "lastName": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Last name of account or entity",
                "example": "Smith"
              },
              "firstName": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "First name of account or entity",
                "example": "John"
              },
              "middleName": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Middle name of account or entity",
                "example": "Robert"
              }
            },
            "description": "Card holder name to be validated with issuer"
          },
          "address": {
            "required": [
              "postalCode"
            ],
            "type": "object",
            "properties": {
              "postalCode": {
                "maxLength": 9,
                "minLength": 1,
                "type": "string",
                "description": "Postal Code provided by the account holder",
                "example": "94105"
              },
              "addressLine1": {
                "maxLength": 40,
                "minLength": 1,
                "type": "string",
                "description": "Address provided by the account holder",
                "example": "123 Main Street"
              }
            },
            "description": "Card holder address to be validated with issuer"
          },
          "ownerType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Account owner type to identify if the name belongs to the primary or secondary account owner",
            "example": "01"
          },
          "dateOfBirth": {
            "maxLength": 8,
            "minLength": 8,
            "type": "string",
            "description": "Date of birth of the cardholder in YYYYMMDD format.",
            "example": "19900115"
          },
          "phoneNumber": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string",
            "description": "Card holder Phone Number verified with the issuer",
            "example": "+14155551234"
          },
          "emailAddress": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Card holder Email Address verified with the issuer",
            "example": "john.smith@example.com"
          },
          "ageVerification": {
            "maxLength": 15,
            "minLength": 3,
            "type": "string",
            "description": "Age thresholds for age verification, sequenced in NNDNNDNNDNNDNND format where NN=Age and D=equal or greater.\nBetween 1 and 5 age thresholds may be provided. Each threshold is two digits followed by 'D'.\n",
            "example": "18D30D50D65D75D"
          },
          "identificationList": {
            "type": "array",
            "description": "Used to validate the cardholder identity. Supported only in the LAC region. API calls have to be MLE enabled to use this.",
            "items": {
              "required": [
                "idNumber",
                "idType"
              ],
              "type": "object",
              "properties": {
                "idType": {
                  "type": "string",
                  "description": "Type of identification",
                  "example": "PASN",
                  "enum": [
                    "NTID",
                    "PASN",
                    "DRLN",
                    "TXIN"
                  ]
                },
                "idNumber": {
                  "maxLength": 35,
                  "minLength": 1,
                  "type": "string",
                  "description": "The identification value",
                  "example": "P1234567"
                }
              }
            }
          }
        },
        "description": "Card holder details for Verification check"
      },
      "ExposureInfoFlexibleSettlementNotification": {
        "required": [
          "accountId",
          "eventType",
          "exposureInfo",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "CLIENT_EXPOSURE"
            ]
          },
          "exposureInfo": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExposureInfoDetails"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "UpdatePayoutStatusRequest-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/UpdatePayoutRequest-4"
          }
        ]
      },
      "AccountVerificationRequest": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "type": "object",
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: \"Creditor Private Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "type": "string",
            "description": "The ID of the initiating party.",
            "example": "123456"
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "AccountQueryPendingOnlyCancelledResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-4"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus-2"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountQueryPendingOnlyCancelledResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "ValidatePayoutDigitalAssetRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-1"
          }
        ]
      },
      "403ErrorResponseWithKey-2": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          }
        }
      },
      "ExposureInfoDetails-1": {
        "required": [
          "currencyCode",
          "flexibleAmountLimit",
          "flexibleAmountRemaining",
          "flexibleAmountUtilized"
        ],
        "properties": {
          "dueDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue-1"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/TotalAmountOverdue-1"
          },
          "flexibleAmountLimit": {
            "$ref": "#/components/schemas/FlexibleAmountLimit-1"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          },
          "flexibleAmountUtilized": {
            "$ref": "#/components/schemas/FlexibleAmountUtilized-1"
          },
          "flexibleAmountRemaining": {
            "$ref": "#/components/schemas/FlexibleAmountRemaining-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "403ErrorResponseWithKey-1": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/403ErrorResponseObject"
              }
            ]
          }
        }
      },
      "AFTOriginatorDetail": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTOriginatorDetailAdditionalData"
            }
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        }
      },
      "OriginatorAddress": {
        "required": [
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "Originating Entity City\n"
          },
          "state": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Originating Entity State Code\n\nConditional (Required if Orignating Entity country is US or Canada)\n",
            "example": "TX"
          },
          "county": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Originating Entity Country Sub Division Minor code\n"
          },
          "country": {
            "description": "Orignating Entity country code. \n\nFormat: 3-digit ISO-3166 (numeric) country code\n",
            "example": 842,
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "maxLength": 14,
            "minLength": 1,
            "type": "string",
            "description": "Originating Entity Postal Code \n\nConditional (Required if Orignating Entity country is US or Canada)\n\nUS length is 5 or 9 characters.  \n\nCanada - maximum up to 12 characters\n\nAll other markets- maximum up to 14 characters       \n",
            "example": "78758"
          },
          "addressLine": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Originating Entity address line\n\nISO20022 field name: N/A\n",
            "example": "12500 Curious St"
          }
        },
        "description": "Originator Entity Address"
      },
      "AFTRResponseCardAcceptor": {
        "type": "object",
        "properties": {
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        }
      },
      "AFTResponseCardVerificationResults": {
        "type": "object",
        "properties": {
          "cavvResultCode": {
            "$ref": "#/components/schemas/CavvResultCode"
          },
          "cvv2ResultCode": {
            "$ref": "#/components/schemas/Cvv2ResultCode"
          },
          "addressVerification": {
            "$ref": "#/components/schemas/AddressVerificationResult"
          }
        }
      },
      "EligibilityResponseData-1": {
        "required": [
          "cardEligibilityDetail"
        ],
        "type": "object",
        "properties": {
          "cardEligibilityDetail": {
            "$ref": "#/components/schemas/CardEligibilityDetail-1"
          }
        },
        "description": "Response data for checking card eligibility"
      },
      "CardAcceptorAddress": {
        "required": [
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "City of the Merchant/Originator."
          },
          "state": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>State or province of the Merchant/Originator.<br> Required if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.<br><b>Note:<b> For \"US\" or \"CA\", this field can contain either the full name of the state or the 2 character code of the state. For rest of the countries, if applicable, the field contains the state code of a maximum 6 characters length."
          },
          "county": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "County",
            "example": "County Name"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO Country Code. Refer to <a href=\"https://developer.visa.com/request_response_codes#iso_country_and_currency_codes\">ISO Country Code</a>"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Zip/Postal code of the Merchant/Originator.<br>Required if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.<br><b>Note:</b> For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters."
          },
          "addressLine": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Street Address of merchant/acquirer."
          }
        }
      },
      "Array": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "OCTTransactionDetail-18": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTTransactionDetailAdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "description": "3-digit numeric or 3-character alpha ISO currency code of the transaction as expressed in the amount field. This can be either:<ul><li>The originator's chosen currency for the transaction OR</li><li>The recipient's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode.<br><b>*Note</b>: This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "AddressLine1-1": {
        "maxLength": 50,
        "minLength": 1,
        "description": "This field contains individual recipient's 1st line of address.",
        "example": "555 Dragon Drive",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "PostingDate": {
        "required": [
          "cutoffDateTime",
          "expectedPostingDate"
        ],
        "type": "object",
        "properties": {
          "cutoffDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDate"
              }
            ]
          }
        }
      },
      "OCTTransactionDetail-16": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTTransactionDetailAdditionalData"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "description": "3-digit numeric or 3-character alpha ISO currency code of the transaction as expressed in the amount field. This can be either:<ul><li>The originator's chosen currency for the transaction OR</li><li>The recipient's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode.<br><b>*Note</b>: This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "SenderAccountPayoutAddress-13": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Town Name\" <br> For 3rd party payments: \"Debtor Address Town Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:  \"Ultimate Debtor Address Country Sub-division\" <br> For 3rd party payments: \"Debtor Address Country Sub-division\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Country\" <br> For 3rd party payments: \"Debtor Address Country\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: <br> For 4th  party payments: \"Ultimate Debtor Address Postal Code\" <br> For 3rd party payments: \"Debtor Address Postal Code\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nISO20022 field name:<br> For 4th  party payments:  \"Ultimate Debtor Address Street Name\" <br> For 3rd party payments: \"Debtor Address Street Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Floor\" <br> For 3rd party payments: \"Debtor Address Floor\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "SenderAccountPayoutAddress-12": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "properties": {
          "city": {
            "description": "Sender address city\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Town Name\" <br> For 3rd party payments: \"Debtor Address Town Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City-1"
              }
            ],
            "exampleSetFlag": false
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:  \"Ultimate Debtor Address Country Sub-division\" <br> For 3rd party payments: \"Debtor Address Country Sub-division\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province-1"
              }
            ],
            "exampleSetFlag": false
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Country\" <br> For 3rd party payments: \"Debtor Address Country\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: <br> For 4th  party payments: \"Ultimate Debtor Address Postal Code\" <br> For 3rd party payments: \"Debtor Address Postal Code\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nISO20022 field name:<br> For 4th  party payments:  \"Ultimate Debtor Address Street Name\" <br> For 3rd party payments: \"Debtor Address Street Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1-1"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Floor\" <br> For 3rd party payments: \"Debtor Address Floor\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-4"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SenderAccountPayoutAddress-11": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2"
              }
            ]
          }
        }
      },
      "SenderAccountPayoutAddress-10": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "properties": {
          "city": {
            "description": "Sender address city\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Town Name\" <br> For 3rd party payments: \"Debtor Address Town Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City-1"
              }
            ],
            "exampleSetFlag": false
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:  \"Ultimate Debtor Address Country Sub-division\" <br> For 3rd party payments: \"Debtor Address Country Sub-division\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province-1"
              }
            ],
            "exampleSetFlag": false
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Country\" <br> For 3rd party payments: \"Debtor Address Country\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: <br> For 4th  party payments: \"Ultimate Debtor Address Postal Code\" <br> For 3rd party payments: \"Debtor Address Postal Code\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode-1"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nISO20022 field name:<br> For 4th  party payments:  \"Ultimate Debtor Address Street Name\" <br> For 3rd party payments: \"Debtor Address Street Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1-1"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Floor\" <br> For 3rd party payments: \"Debtor Address Floor\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetQueryResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetQuerySuccessResponse"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryPendingCancelledResponse"
          }
        ]
      },
      "RecipientCountryOfBirth": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Recipient country of birth. Format: 3-digit numeric or 3-character ISO-3166 (Alpha-3) country code. ISO20022 field name: Creditor Country of Birth.\n",
        "example": "840 USA"
      },
      "401ErrorResponseObject": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The short description of the error."
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "type": "integer",
            "description": "3 digit HTTP status code",
            "example": 401
          },
          "details": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "A short code indicating the specific error that occurred."
                },
                "message": {
                  "type": "string",
                  "description": "The long description of the specific error that occurred."
                },
                "location": {
                  "type": "string",
                  "description": "The place in the incoming message that the particular error occurred."
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "The long description of the error"
          }
        }
      },
      "AccountQueryPendingCancelledResponse-10": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "AccountTransactionDetail": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "IndividualsName-1": {
        "maxLength": 70,
        "minLength": 3,
        "description": "Full name of Individual",
        "example": "Visa",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "RecipientCityOfBirth": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Recipient city of birth. ISO20022 field name: Creditor City of Birth.\n",
        "example": "New York"
      },
      "IdNumber-1": {
        "maxLength": 35,
        "minLength": 1,
        "description": "In this field, the identification number (from the document type identified in the field recipientDetail.idType) should be provided.",
        "example": "1234567890",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "IdNumber-2": {
        "maxLength": 35,
        "minLength": 1,
        "description": "In this field, the identification number (from the document type identified in the field recipientDetail.idType) should be provided.",
        "example": 1234567890,
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "RiskAssessmentData": {
        "type": "object",
        "properties": {
          "scpExemptionIndicator": {
            "$ref": "#/components/schemas/ScpExemptionIndicator"
          },
          "traExemptionIndicator": {
            "$ref": "#/components/schemas/TraExemptionIndicator"
          },
          "lowValueExemptionIndicator": {
            "$ref": "#/components/schemas/LowValueExemptionIndicator"
          },
          "scaEnvironmentOutageIndicator": {
            "$ref": "#/components/schemas/ScaEnvironmentOutageIndicator"
          },
          "delegatedAuthenticationIndicator": {
            "$ref": "#/components/schemas/DelegatedAuthenticationIndicator"
          },
          "trustedMerchantExemptionIndicator": {
            "$ref": "#/components/schemas/TrustedMerchantExemptionIndicator"
          }
        }
      },
      "PullFundsDetails-2": {
        "properties": {
          "iBan": {
            "maxLength": 34,
            "minLength": 1,
            "description": "The IBAN, if configured.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "bankName": {
            "description": "The bank name, if configured.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "accountNumber": {
            "maximum": 4,
            "minimum": 1,
            "description": "The last 4 digits of the account number, if configured.\n",
            "exampleSetFlag": false,
            "types": [
              "integer"
            ]
          },
          "expectedDebitDateTime": {
            "description": "<b>MANDATORY.</b> The date and time when the debit request will be initiated.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType-1"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PullFundsDetails-3": {
        "properties": {
          "iBan": {
            "maximum": 34,
            "minimum": 1,
            "description": "The IBAN, if configured.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "bankName": {
            "description": "The bank name, if configured.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "accountNumber": {
            "maximum": 4,
            "minimum": 1,
            "description": "The last 4 digits of the account number, if configured.\n",
            "exampleSetFlag": false,
            "types": [
              "integer"
            ]
          },
          "expectedDebitDateTime": {
            "description": "The date and time when the debit request will be initiated.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType-1"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PullFundsDetails-1": {
        "type": "object",
        "properties": {
          "iBan": {
            "maximum": 34,
            "minimum": 1,
            "type": "string",
            "description": "The IBAN, if configured.\n"
          },
          "bankName": {
            "description": "The bank name, if configured.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "accountNumber": {
            "maximum": 4,
            "minimum": 1,
            "type": "integer",
            "description": "The last 4 digits of the account number, if configured.\n"
          },
          "expectedDebitDateTime": {
            "description": "<b>MANDATORY.</b> The date and time when the debit request will be initiated.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "MerchantVerificationValue": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "The concatenated Merchant Verification Value of Visa assigned and Acquirer assigned value.",
        "example": "1234567890"
      },
      "OriginatorLegalName": {
        "maxLength": 25,
        "minLength": 1,
        "type": "string",
        "description": "The legal business name of the merchant or originating entity sending the payment instruction to Visa.\n",
        "example": "ACME Co"
      },
      "SharingGroupCode": {
        "type": "string",
        "description": "Optionally used by Push Payments Gateway participants to specify the network access priority. Supported only in US for domestic transactions involving Push Payments Gateway Service.",
        "example": "SGCXXXXXXX"
      },
      "AFTRecipientDetailAdditionalData": {
        "anyOf": [
          {
            "title": "identificationNumberBusiness",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "identificationNumberBusiness<br><br><b>Conditional.</b><br><br>This is an alphanumeric value that carries the recipient's identification number issued to the recipient by the government or an authorized national entity. This field is to be used if the recipient is a business (e.g. Disbursements) <br><br> If recipientIdentificationNumberIndividual is not populated, then this field needs to be populated mandatorily for Brazil domestic trasactions when businessApplicationId has any of the below values:<br><br>AA<br>PP<br>TU<br>BI<br>WT<br>FT<br><br>For Argentina domestic purchase transactions this field contains the merchant’s value-added tax (VAT) registration number or single business reference number (SBRN)."
              },
              "value": {
                "maxLength": 20,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "identificationNumberIndividual",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "identificationNumberIndividual<br><br><b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
              },
              "value": {
                "maxLength": 13,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "localNameData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "localNameData<br><br>This object is used to provide the recipient's local name data. This object is required for transactions where the recipient's local name data is required."
              },
              "value": {
                "$ref": "#/components/schemas/RecipientLocalNameData"
              }
            }
          },
          {
            "title": "contactInformationList",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "contactInformationList<br><br>Contact Information list of recipient.<br /><br />Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/ContactInformationList"
              }
            }
          },
          {
            "title": "ancillaryRecipientDetails",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "ancillaryRecipientDetails<br><br>Ancillary recipient details.<br><br>Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/AncillaryRecipientDetails"
              }
            }
          }
        ]
      },
      "WindowDueDetails-3": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/DueDateTime"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          }
        }
      },
      "VMID": {
        "maxLength": 8,
        "minLength": 1,
        "type": "string",
        "description": "Visa Merchant Identifier\n",
        "example": "12345678"
      },
      "WindowDueDetails-1": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact-1"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/DueDateTime-1"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WindowDueDetails-2": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact-1"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/DueDateTime-1"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SenderContactEmail": {
        "maxLength": 99,
        "minLength": 1,
        "type": "string",
        "description": "Sender email address.",
        "format": "email",
        "example": "john.smith@example.com"
      },
      "AccountQuerySuccessResponse-20": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/TransactionStatus-1"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-3"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-7"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-6"
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-6"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails-3"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-2"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-4"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-4"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-4"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "ColombiaNationalServiceData-1": {
        "required": [
          "countryCodeNationalService",
          "nationalNetReimbursementFeeBaseAmount"
        ],
        "type": "object",
        "properties": {
          "addValueTaxAmount": {
            "type": "number",
            "description": "Tax amount value",
            "format": "double",
            "example": 8
          },
          "addValueTaxReturn": {
            "type": "number",
            "format": "double"
          },
          "taxAmountConsumption": {
            "type": "number",
            "description": "a",
            "format": "double"
          },
          "nationalNetMiscAmount": {
            "type": "number",
            "format": "double"
          },
          "emvTransactionIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "costTransactionIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "nationalChargebackReason": {
            "type": "integer"
          },
          "nationalReimbursementFee": {
            "type": "number",
            "description": "a",
            "format": "double"
          },
          "nationalNetMiscAmountType": {
            "maxLength": 1,
            "type": "string",
            "description": "Optional string with a length of 1 character"
          },
          "countryCodeNationalService": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "3-digit numeric or 3-character alpha for national service data <br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "example": "484 MEX"
          },
          "nationalNetReimbursementFeeBaseAmount": {
            "type": "number",
            "description": "Base amount for net reimbursement fee calculation",
            "format": "double",
            "example": 98.5
          }
        }
      },
      "PayoutNotificationProcessRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-3"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "RouteDefinitionChangePerCountryAndCurrency": {
        "required": [
          "metadataVersion",
          "metadataVersionDate",
          "notificationId",
          "notificationType",
          "payoutMethod",
          "recipientCountryCode",
          "recipientCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Payout method code. Valid values are B- Bank , W- Wallet (This ENUM is not currently supported. It is for future use.)\n",
            "enum": [
              "B",
              "w"
            ]
          },
          "notificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique identifier for the notification.\n",
            "example": "58e0a7d7-eebc-11d8-9669-0800200c9a66"
          },
          "metadataVersion": {
            "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
            "type": "string",
            "description": "This is the version of the updated route definition. \nIt is in the format <major-version>.<minor-version>.<patch>.\n\n* patch updates are documentation updates only and should not influence the processing of a payout transaction. Example: changes to the description of Purpose of Payment code.\n\n* minor-version updates indicate backward compatible changes in the route validation rules on a payout transaction. Example: addition of a new Purpose of Payment code.\n\n* major-version updates indicate backward incompatible changes in the route validation rules on a payout transaction. Such changes are usually regulatory in nature or due to partner migration on Visa's backend. Example: Purpose of Payment code changing from a \"conditional\"/ \"recommended\" to a \"required\" field.\n",
            "example": "1.0.0"
          },
          "notificationType": {
            "type": "string",
            "description": "Notification Type. Valid value- LIVE_UPDATE, FUTURE_UPDATE (This ENUM is not currently supported. It is for future use.), ROUTE_DISCONTINUED",
            "enum": [
              "LIVE_UPDATE",
              "FUTURE_UPDATE",
              "ROUTE_DISCONTINUED"
            ]
          },
          "metadataVersionDate": {
            "type": "string",
            "description": "This is the date when the metadata version will go live.\n",
            "format": "date"
          },
          "recipientCountryCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-3166 (Alpha-3) country code\n",
            "example": "USA"
          },
          "recipientCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-4217 (Alpha-3) currency code\n",
            "example": "USD"
          },
          "recipientWalletOperator": {
            "type": "string",
            "description": "Wallet operator enumerated names. This field will be present only when the payoutMethod is W. recipientWalletOperator is for future use as payoutMethod=W is not currently supported.\n",
            "example": "BKASH"
          }
        }
      },
      "OCTCardAcceptor-8": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/OCTCardAcceptorAddress"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/OCTPaymentFacilitator-8"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/OCTServiceLocationDetails-1"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Original Credit Transaction"
      },
      "OCTCardAcceptor-9": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/OCTCardAcceptorAddress"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/OCTPaymentFacilitator-9"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/OCTServiceLocationDetails-1"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Original Credit Transaction"
      },
      "OCTCardAcceptor-6": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/OCTCardAcceptorAddress"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/OCTPaymentFacilitator-6"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/OCTServiceLocationDetails-1"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Original Credit Transaction"
      },
      "ActionCode-1": {
        "type": "string",
        "description": "Represents action on the payout",
        "enum": [
          "RECALL",
          "REJECT",
          "BENECONFIRM",
          "RECALLACCEPT",
          "RECALLREJECT",
          "REVERSAL"
        ]
      },
      "OCTCardAcceptor-7": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/OCTCardAcceptorAddress"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/OCTPaymentFacilitator-7"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/OCTServiceLocationDetails-1"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Original Credit Transaction"
      },
      "OCTCardAcceptor-4": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId-2"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName-1"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID-1"
          },
          "address": {
            "$ref": "#/components/schemas/OCTCardAcceptorAddress-1"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-2"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress-1"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName-1"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation-1"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/OCTPaymentFacilitator-4"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode-1"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/OCTServiceLocationDetails-3"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-2"
          }
        },
        "description": "Card acceptor details for Original Credit Transaction"
      },
      "OCTCardAcceptor-2": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/OCTCardAcceptorAddress"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/OCTPaymentFacilitator-2"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/OCTServiceLocationDetails-1"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Original Credit Transaction"
      },
      "OCTCardAcceptor-3": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/OCTCardAcceptorAddress"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/OCTPaymentFacilitator-3"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/OCTServiceLocationDetails-1"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Original Credit Transaction"
      },
      "SenderIsIndividual": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names <br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualSenderIdentificationListAccount"
          }
        }
      },
      "AccountSenderTypeIsUnspecified": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Sender name. Full name is conditionally required when \"firstName\" and \"lastName\" are not provided. <br>Must have at least 3 chars<br>Must not contain exclusively numeric characters<br>Must not contain special symbols<br><table>  <tr>  <td>!</td><td>\"</td><td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"    \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FullNameInUnspecifiedIdentityType"
              }
            ]
          },
          "type": {
            "type": "string",
            "description": "Identifies the type of sender - \"U\" for Unspecified(whether Individual or Company).\n",
            "enum": [
              "U"
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/UnspecifiedTypeSenderIdentificationListAccountWallet"
          }
        }
      },
      "ActionCode-2": {
        "type": "string",
        "description": "Represents action on the payout",
        "enum": [
          "CANCEL",
          "RECALL",
          "REJECT",
          "BENECONFIRM",
          "RECALLACCEPT",
          "RECALLREJECT",
          "REVERSAL"
        ]
      },
      "ActionCode-3": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Indicates the VisaNet response code for the transaction authorization or processing result. This code reflects the outcome of the transaction request as returned by the network. It is used for interpreting whether the transaction was approved, declined, or requires additional action. Format Length constraint: [2 .. 2] characters Values typically follow VisaNet-defined response codes (e.g., 00 for approved, others for specific decline or error conditions).<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid VisaNet action code as per network specifications.</li>\n  <li>Cannot contain spaces or special characters.</li>\n</ul>",
        "example": "00   // Approved\n05   // Do not honor\n91   // Issuer or switch inoperative"
      },
      "RouteDefinitionRecallPerCountryClusterAndCurrency": {
        "required": [
          "metadataVersion",
          "metadataVersionDate",
          "notificationId",
          "notificationType",
          "payoutMethod",
          "recipientCountryCluster",
          "recipientCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Payout method code. Valid value is B- bank.\n",
            "enum": [
              "B"
            ]
          },
          "notificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique identifier for the notification. In case of a recall (i.e., when the notificationType is \"RECALL\"), this field will contain the notificationId of a previously sent notification that is being recalled.\n",
            "example": "58e0a7d7-eebc-11d8-9669-0800200c9a66"
          },
          "metadataVersion": {
            "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
            "type": "string",
            "description": "This is the version of the route definition recalled by VISA. \nIt is in the format <major-version>.<minor-version>.<patch>.\n\n* patch updates are documentation updates only and should not influence the processing of a payout transaction. Example: changes to the description of Purpose of Payment code.\n\n* minor-version updates indicate backward compatible changes in the route validation rules on a payout transaction. Example: addition of a new Purpose of Payment code.\n\n* major-version updates indicate backward incompatible changes in the route validation rules on a payout transaction. Such changes are usually regulatory in nature or due to partner migration on Visa's backend. Example: Purpose of Payment code changing from a \"conditional\"/ \"recommended\" to a \"required\" field.\n",
            "example": "1.0.0"
          },
          "notificationType": {
            "type": "string",
            "description": "Notification type.\n",
            "enum": [
              "RECALL"
            ]
          },
          "metadataVersionDate": {
            "type": "string",
            "description": "This was the expected go-live date of the recalled metadata version.",
            "format": "date"
          },
          "recipientCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-4217 (Alpha-3) currency code\n",
            "example": "USD"
          },
          "recipientCountryCluster": {
            "type": "string",
            "description": "Country Cluster code-valid values are SEPA, CEMAC, UEMOA\n",
            "enum": [
              "SEPA",
              "CEMAC",
              "UEMOA"
            ]
          }
        }
      },
      "PersistentFX": {
        "type": "object",
        "properties": {
          "exchangeRate": {
            "$ref": "#/components/schemas/ExchangeRate"
          },
          "visaRateTableId": {
            "$ref": "#/components/schemas/VisaRateTableId"
          },
          "visaRateProvider": {
            "$ref": "#/components/schemas/VisaRateProvided"
          }
        }
      },
      "AccountQuerySuccessResponse-10": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-4"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Transaction Information And Status - Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-4"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/QueryServiceDetail"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-4"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/QueryReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-21": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-4"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "OCTCardAcceptor-1": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/OCTCardAcceptorAddress"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/OCTPaymentFacilitator-1"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/OCTServiceLocationDetails-1"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Original Credit Transaction"
      },
      "PayoutNotificationProcessRequest-20": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-4"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-3"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "AccountQuerySuccessResponse-19": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-5"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-6"
                  }
                ],
                "exampleSetFlag": false
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel-1"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-6"
                  }
                ],
                "exampleSetFlag": false
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-3"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-5"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails-2"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId-1"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail-2"
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ProcessingDate": {
        "type": "string",
        "description": "Date when the transaction was processed",
        "format": "date"
      },
      "AccountQuerySuccessResponse-18": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-3"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-4"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-3"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQuerySuccessResponse-17": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-3"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Transaction Information And Status - Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-4"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-3"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-2"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQuerySuccessResponse-16": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-4"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/TransactionStatus-5"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel-1"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-5"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-3"
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-5"
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-4"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails-1"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId-1"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RecipientType-1": {
        "type": "string",
        "description": "Optional. This field identifies if the recipient is a business or an individual.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>I = Individual</li>\n  <li>C = Company</li>\n</ul>\n<b>Note:</b> This field is only applicable for domestic Colombia transactions. For other transactions, if the field is provided, it will be dropped.",
        "example": "\"I\"",
        "enum": [
          "I",
          "C"
        ]
      },
      "Occupation": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Occupation of the recipient"
      },
      "VerificationResponseData-1": {
        "required": [
          "cardVerificationDetail",
          "transactionalDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId"
            ],
            "type": "object",
            "properties": {
              "approvalCode": {
                "maxLength": 6,
                "minLength": 1,
                "type": "string",
                "description": "Approval code from the Issuer",
                "example": "123456"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
              },
              "initiatingPartyId": {
                "type": "integer",
                "description": "A unique identifier assigned by the initiating party for the API consumer",
                "format": "int64",
                "example": 987654321
              },
              "transactionIdentifier": {
                "maxLength": 15,
                "minLength": 15,
                "type": "string",
                "description": "Visa generated unique identifier for the transaction",
                "example": "123456789012345"
              }
            }
          },
          "cardVerificationDetail": {
            "required": [
              "cardVerificationResult"
            ],
            "type": "object",
            "properties": {
              "invalidReason": {
                "type": "string",
                "description": "Reason why card is invalid",
                "example": "EXPIRED_CARD",
                "enum": [
                  "UNKNOWN",
                  "LOST_CARD",
                  "STOLEN_CARD",
                  "EXPIRED_CARD",
                  "INVALID_ACCOUNT",
                  "CLOSED_ACCOUNT",
                  "CVV2_FAILURE",
                  "FRAUD",
                  "SUSPECTED_FRAUD",
                  "RESTRICTED_CARD",
                  "INVALID_CVV",
                  "CARD_BLOCKED",
                  "SECURITY_VIOLATION",
                  "TRANSACTION_NOT_PERMITTED",
                  "INVALID_TRANSACTION",
                  "INSUFFICIENT_FUNDS"
                ]
              },
              "cvvVerificationResult": {
                "type": "string",
                "description": "Result of the CVV2 validation for the primaryAccountNumber in the request",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "NO_MATCH",
                  "NOT_PERFORMED"
                ]
              },
              "cardVerificationResult": {
                "type": "string",
                "description": "Result of the card verification process",
                "example": "VALID",
                "enum": [
                  "VALID",
                  "INVALID"
                ]
              },
              "nameVerificationResult": {
                "type": "string",
                "description": "Result of the account name matching performed by Account Name",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH",
                  "NO_MATCH",
                  "NOT_PERFORMED",
                  "NOT_SUPPORTED"
                ]
              },
              "cardAuthenticationResult": {
                "type": "string",
                "description": "A Visa-defined code indicating Online Card Authentication Method result",
                "example": "VERIFIED",
                "enum": [
                  "VERIFIED",
                  "FAILED",
                  "NOT_PERFORMED"
                ]
              },
              "addressVerificationResult": {
                "type": "string",
                "description": "Result of the Address Verification Service (AVS) validation for the Primary account number in the request when requested",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH_POSTALCODE",
                  "PARTIAL_MATCH_STREETADDRESS",
                  "NOT_VERIFIED",
                  "NOT_VERIFIED_RETRY"
                ]
              },
              "identityVerificationResult": {
                "type": "object",
                "properties": {
                  "idType": {
                    "type": "string",
                    "description": "Account holder ID type",
                    "example": "PSPN",
                    "enum": [
                      "NTID",
                      "PSPN",
                      "DRLN",
                      "TXIN"
                    ]
                  },
                  "idVerificationResult": {
                    "type": "string",
                    "description": "Identity verification result",
                    "example": "VERIFIED",
                    "enum": [
                      "VERIFIED",
                      "NOT_PERFORMED",
                      "FAILED",
                      "NOT_SUPPORTED"
                    ]
                  }
                },
                "description": "Identity verification details"
              },
              "lastNameVerificationResult": {
                "type": "string",
                "description": "Result of the account last name matching performed by Account Name",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH",
                  "NO_MATCH"
                ]
              },
              "firstNameVerificationResult": {
                "type": "string",
                "description": "Result of the account First name matching performed by Account Name",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH",
                  "NO_MATCH"
                ]
              },
              "middleNameVerificationResult": {
                "type": "string",
                "description": "Result of the account middle name matching performed by Account Name",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH",
                  "NO_MATCH"
                ]
              },
              "phoneNumberVerificationResult": {
                "type": "string",
                "description": "Card holder phone verification result from the issuer",
                "example": "VERIFIED",
                "enum": [
                  "VERIFIED",
                  "NOT_PERFORMED",
                  "FAILED"
                ]
              },
              "emailAddressVerificationResult": {
                "type": "string",
                "description": "Card holder Email Address Verification Results from the issuer",
                "example": "VERIFIED",
                "enum": [
                  "VERIFIED",
                  "NOT_PERFORMED",
                  "FAILED"
                ]
              },
              "cardholderAuthenticationVerificationResult": {
                "type": "string",
                "description": "If TAVV is provided in the request, its validation result will be provided in this field.\nFor future: This field will be extended to provide validation result for Cardholder Authentication Verification Value (CAVV).\n",
                "example": "VERIFIED",
                "enum": [
                  "VERIFIED",
                  "FAILED",
                  "NOT_PERFORMED"
                ]
              }
            },
            "description": "Verification results for the card"
          }
        },
        "description": "Response data for Verification check with card verification results"
      },
      "AFTRResponseTransactionDetail-18": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse-11"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTRServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "SettlementInfo-1": {
        "required": [
          "settlementResponsibilityFlag"
        ],
        "type": "object",
        "properties": {
          "givUpdatedFlag": {
            "$ref": "#/components/schemas/GivUpdatedFlag-2"
          },
          "settlementServiceFlag": {
            "$ref": "#/components/schemas/SettlementServiceFlag-2"
          },
          "givPreviouslyUpdatedFlag": {
            "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-2"
          },
          "settlementResponsibilityFlag": {
            "$ref": "#/components/schemas/SettlementResponsibilityFlag-2"
          }
        }
      },
      "RejectReason": {
        "maxLength": 256,
        "minLength": 1,
        "type": "string",
        "description": "Detailed description of the rejection reason",
        "example": "Insufficient Funds"
      },
      "AFTRResponseTransactionDetail-11": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTRServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "EndToEndId": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Identifier assigned by the Originating Entity's customer to track the transaction end-to-end\n\nConditional: Required if payout to a wallet recipient\n\nISO20022 field name: end-to-end identification\n",
        "example": "5003f6a02c4411b2aa5747378ae5331"
      },
      "AFTRResponseTransactionDetail-16": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTRServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "401ErrorResponseWithKey-2": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID"
              }
            ]
          }
        }
      },
      "401ErrorResponseWithKey-1": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/401ErrorResponseObject"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequest-1": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\n\nValid values:\n\"D\" – Visa Direct Digital Asset\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-1"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequest-2": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\n\nValid values:\n\"D\" – Visa Direct Digital Asset\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequest-3": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\n\nValid values:\n\"D\" – Visa Direct Digital Asset\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequest-4": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\n\nValid values:\n\"D\" – Visa Direct Digital Asset\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-6"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "TransactionStatus": {
        "type": "string",
        "description": "- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received\n- AWAITING_INFORMATION: Awaiting more information before transaction is processed .\n- PAYMENT_SENT: The payout has been submitted to the Network partner\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- PENDING_CANCELLATION: Cancel payout status is pending\n- CANCELLED - Payout is cancelled\n- RETURNED: Returned request is refunded to Originating Entity\n- REJECTED: Rejected request is refunded to Originating Entity\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n",
        "example": "PAYMENT_SENT",
        "enum": [
          "PAYMENT_RECEIVED",
          "AWAITING_INFORMATION",
          "PAYMENT_SENT",
          "PAYMENT_DELIVERED",
          "PENDING_CANCELLATION",
          "CANCELLED",
          "RETURNED",
          "REJECTED",
          "DELIVERED_TO_SCHEME",
          "DELIVERED_TO_RECIPIENT_BANK"
        ]
      },
      "PayoutDigitalAssetRequest-5": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\n\nValid values:\n\"D\" – Visa Direct Digital Asset\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-7"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequest-6": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\n\nValid values:\n\"D\" – Visa Direct Digital Asset\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-8"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequest-7": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\n\nValid values:\n\"D\" – Visa Direct Digital Asset\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-9"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "ArgentinaNationalServiceData": {
        "required": [
          "reimbursementFee"
        ],
        "type": "object",
        "properties": {
          "reimbursementFee": {
            "type": "number",
            "description": "Fee amount for reimbursement",
            "format": "double",
            "example": 1.5
          },
          "reimbursementFeeTax": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "PayoutDigitalAssetRequest-8": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\n\nValid values:\n\"D\" – Visa Direct Digital Asset\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-5"
              }
            ],
            "exampleSetFlag": false
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-12"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID-2"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset-1"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-9"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "OCTResponseData-1": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-1"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "OCTResponseData-3": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-4"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "OCTResponseData-2": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-2"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "OCTResponseData-5": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-3"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "AFTRRequestData-12": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTROriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRTransactionDetail-12"
          }
        },
        "description": "Details for Account Funding Transaction Reversal"
      },
      "OCTResponseData-4": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-6"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "PaymentCredentialReference": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID",
              "PAYNAME",
              "PHONE",
              "EMAIL",
              "DIRECTORY_ALIASID"
            ]
          },
          "value": {
            "maxLength": 128,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. If type is PAYNAME then length should be between 6 and 50 characters. Format should be +payname.domain. The payname, between '+' and '.' characters, should be minimum 3 characters.<br>  For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>  For \"PHONE\", \"EMAIL\", \"DIRECTORY_ALIASID\", length is 1-128 characters. <br> <br>  If phone number is used for alias, this should be provided in accordance with ITU-T E.164 (2010) number structure.  Please note that in the E.164 format, the '+' sign is not included. Below are some examples of phone numbers with different country codes - <br> <table>\n        <thead>\n            <tr>\n                <th>Country</th>\n                <th>Country Code</th>\n                <th>Examples</th>\n            </tr>\n        </thead>\n        <tbody>\n            <tr>\n                <td>United States</td>\n                <td>1</td>\n                <td>1650xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Ukraine</td>\n                <td>380</td>\n                <td>38067xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Belarus</td>\n                <td>375</td>\n                <td>37529xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Kazakhstan</td>\n                <td>7</td>\n                <td>7701xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>United Kingdom</td>\n                <td>44</td>\n                <td>4478xxxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Singapore</td>\n                <td>65</td>\n                <td>659xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Hong Kong</td>\n                <td>852</td>\n                <td>8529xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Kenya</td>\n                <td>254</td>\n                <td>254701xxxxxx</td>\n            </tr>\n        </tbody>\n    </table>\n",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "authenticationData": {
            "$ref": "#/components/schemas/RecipientAuthenticationData"
          }
        },
        "description": "External reference to a payment credential"
      },
      "OCTResponseData-7": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-9"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "OCTResponseData-6": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-8"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "OCTResponseData-9": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail-11"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "RiskAssessmentData-1": {
        "type": "object",
        "properties": {
          "scpExemptionIndicator": {
            "type": "string",
            "description": "Secure Corporate Payment (SCP) Indicator.\n\nValid Values :\nFALSE - Secure corporate payment exemption not claimed/requested\nTRUE - Secure corporate payment exemption claimed/requested\n\nIf this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely.\n\nThis field maps to ISO8583->TLV Field 34, Dataset ID 4A, Tag 88.\n",
            "enum": [
              "true",
              "false"
            ]
          },
          "traExemptionIndicator": {
            "type": "string",
            "description": "Transaction Risk Analysis (TRA) Exemption Indicator.\n\nValid Values :\nFALSE - Transaction risk analysis exemption not claimed/requested\nTRUE - Transaction risk analysis exemption claimed/requested\n\nIf this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely.\n\nThis field maps to ISO8583->TLV Field 34, Dataset ID 4A, Tag 89.          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "lowValueExemptionIndicator": {
            "type": "string",
            "description": "Low Value Exemption Indicator.\n\nValid Values :\nFALSE - Low value exemption not claimed/requested\nTRUE - Low value exemption claimed/requested\n\nIf this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely.\n\nThis field maps to ISO8583->TLV Field 34, Dataset ID 4A, Tag 87.\n",
            "enum": [
              "true",
              "false"
            ]
          },
          "scaEnvironmentOutageIndicator": {
            "type": "string",
            "description": "Acceptance Environment Authentication Outage Indicator.\n\nValid Values :\nFALSE - No authentication outage\nTRUE - Authentication outage\n\nIf this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely.This field maps to ISO8583 Field 34 – Dataset ID 02 -Tag 87.\n",
            "enum": [
              "true",
              "false"
            ]
          },
          "delegatedAuthenticationIndicator": {
            "type": "string",
            "description": "Delegated Authentication Indicator.\n\nValid Values :\nFALSE - Delegated authentication not claimed/requested\nTRUE - Delegated authentication claimed/requested\n\nIf this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely.\nClients requesting this exemption should also provide the the following request parameters:\n1. visaMerchantIdentifier value, which is an unique identifier assigned by Visa for each merchant included in the identification program.Issuers can obtain a list of Visa-assigned merchant identifiers from Visa Online (VOL).\n2. Cardholder Authentication Verification Value (CAVV) OR Token Authentication Verification Value (TAVV)\n\nProgram Qualification: Acquirers that choose to participate will identify and qualify potential Delegates that meet the qualification criteria and work with them to evidence how their authentication capabilities are compliant and to obtain their agreement to the requirements of the Program through the Readiness Questionnaire. Token requestors may submit their Readiness Questionnaire directly to Visa. On a per transaction basis, the delegated entity will flag to the Issuer that SCA was performed through EMV 3DS (2.2 only) or VTS.\n\nThis field maps to ISO8583->TLV Field 34, Dataset ID 4A, Tag 8A.\n",
            "enum": [
              "true",
              "false"
            ]
          },
          "trustedMerchantExemptionIndicator": {
            "type": "string",
            "description": "Trusted Merchant Exemption Indicator.\n\nValid Values :\nFALSE - Trusted merchant exemption not claimed/requested\nTRUE - Trusted merchant exemption claimed/requested\n\nIf this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely.\n\nThis field maps to ISO8583->TLV Field 34, Dataset ID 4A, Tag 84.\n",
            "enum": [
              "true",
              "false"
            ]
          }
        }
      },
      "AddressVerificationData": {
        "required": [
          "postalCode"
        ],
        "type": "object",
        "properties": {
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Postal code for address verification"
          },
          "streetName": {
            "maxLength": 40,
            "minLength": 0,
            "type": "string",
            "description": "Street for address verification"
          }
        }
      },
      "AFTRResponseTransactionDetail-7": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse-2"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "TokenAssuranceMethod-1": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "This field contains different category value to determine the Risk Score associated with the token and transaction. Format Values defined by Visa token assurance standards.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid Visa token assurance method code.</li>\n  <li>Cannot contain spaces or special characters.</li>\n</ul>",
        "example": "1"
      },
      "AFTRResponseTransactionDetail-6": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "AFTRResponseTransactionDetail-9": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse-4"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-3"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTRServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier-1"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "AFTRResponseTransactionDetail-3": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse-2"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "AFTRResponseTransactionDetail-2": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTRServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "AFTRResponseTransactionDetail-5": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse-2"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "AFTRResponseTransactionDetail-4": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "DigitalAssetValidPayoutResponse-12": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "CancelDeferredPayoutRequestData": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "required": [
              "acquiringBin"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 408999
              }
            },
            "description": "Details about the originator of the cancel request"
          },
          "transactionDetail": {
            "required": [
              "id",
              "idType"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER",
                  "CLIENT_REFERENCE_ID"
                ]
              }
            },
            "description": "Transaction details for cancel deferred payout"
          }
        },
        "description": "Request data for canceling a deferred payout transaction"
      },
      "DigitalAssetValidPayoutResponse-15": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "$ref": "#/components/schemas/ExpectedPostingDateForValidate-3"
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "DigitalAssetValidPayoutResponse-14": {
        "required": [
          "validationResultCode"
        ],
        "properties": {
          "validationDetails": {
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-5"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ],
            "exampleSetFlag": false
          },
          "validationResultCode": {
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetValidPayoutResponse-13": {
        "required": [
          "validationResultCode"
        ],
        "properties": {
          "validationDetails": {
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-5"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "expectedPostingDate": {
            "$ref": "#/components/schemas/ExpectedPostingDateForValidate-2"
          },
          "validationResultCode": {
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ClientVerificationReference-3": {
        "maxLength": 35,
        "minLength": 1,
        "pattern": "^[a-zA-Z0-9- /?:().,'+]*$",
        "description": "A client submitted identifier. This field and same value will be returned in the response.",
        "example": 1234567890,
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "ClientVerificationReference-2": {
        "maxLength": 35,
        "minLength": 1,
        "pattern": "^[a-zA-Z0-9- /?:().,'+]*$",
        "description": "A client submitted identifier. This field and same value will be returned in the response.",
        "example": "1234567890",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "ClientVerificationReference-1": {
        "maxLength": 35,
        "minLength": 1,
        "pattern": "^[a-zA-Z0-9- /?:().,'+]*$",
        "type": "string",
        "description": "An optional client submitted identifier. This field and same value will be returned in the response.",
        "example": "1234567890"
      },
      "RetrievalReferenceNumber": {
        "maxLength": 12,
        "minLength": 12,
        "type": "string",
        "description": "Reference number for the transaction",
        "example": "412345678901"
      },
      "AFTRResponseTransactionDetail-1": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTRNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "SenderType-1": {
        "type": "string",
        "description": "Optional. This field identifies if the sender is a business or an individual.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>I = Individual</li>\n  <li>C = Company</li>\n</ul>\n<b>Note:</b> This field is only applicable for domestic Colombia transactions. For other transactions, if the field is provided, it will be dropped.",
        "example": "\"I\"",
        "enum": [
          "I",
          "C"
        ]
      },
      "401ErrorResponseWithKey": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/401ErrorResponseWithKey"
              }
            ]
          }
        }
      },
      "RecipientCountryOfBirth-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Recipient country of birth. Format: 3-character ISO-3166 (Alpha-3) country code. ISO20022 field name: Creditor Country of Birth.\n",
        "example": "USA"
      },
      "WindowDueDetails": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/DueDateTime"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          }
        }
      },
      "DigitalAssetRecipientPayoutAddress-1": {
        "required": [
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "AccountPayoutOnlyRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-8"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-11"
          }
        ],
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountPayoutOnlyRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/AccountTransactionDetail-9"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-12"
          }
        ]
      },
      "AccountPayoutOnlyRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest"
          }
        ]
      },
      "DigitalAssetRecipientPayoutAddress-3": {
        "required": [
          "country"
        ],
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City-1"
              }
            ],
            "exampleSetFlag": false
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province-1"
              }
            ],
            "exampleSetFlag": false
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode-1"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1-1"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetRecipientPayoutAddress-2": {
        "required": [
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-2"
              }
            ]
          }
        }
      },
      "AccountPayoutOnlyRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/AccountTransactionDetail-5"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-10"
          }
        ],
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetRecipientPayoutAddress-4": {
        "required": [
          "country"
        ],
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City-1"
              }
            ],
            "exampleSetFlag": false
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province-1"
              }
            ],
            "exampleSetFlag": false
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1-1"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-4"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "TransactionStatus-5": {
        "description": "- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received\n- AWAITING_INFORMATION: More information required by Visa before transaction can be processed.\n- PAYMENT_SENT: The payout has been submitted to the Network partner\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- PENDING_CANCELLATION: Cancel payout status is pending\n- CANCELLED - Payout is cancelled\n- RETURNED: Returned request is refunded to Originating Entity\n- REJECTED: Rejected request is refunded to Originating Entity\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n",
        "example": "PAYMENT_SENT",
        "enum": [
          "PAYMENT_RECEIVED",
          "AWAITING_INFORMATION",
          "PAYMENT_SENT",
          "PAYMENT_DELIVERED",
          "PENDING_CANCELLATION",
          "CANCELLED",
          "RETURNED",
          "REJECTED",
          "DELIVERED_TO_SCHEME",
          "DELIVERED_TO_RECIPIENT_BANK"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "TransactionStatus-6": {
        "description": "- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received\n- AWAITING_INFORMATION: Awaiting more information before transaction is processed .\n- PAYMENT_SENT: The payout has been submitted to the Network partner\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- PENDING_CANCELLATION: Cancel payout status is pending\n- CANCELLED - Payout is cancelled\n- RETURNED: Returned request is refunded to Originating Entity\n- REJECTED: Rejected request is refunded to Originating Entity\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n",
        "example": "PAYMENT_SENT",
        "enum": [
          "PAYMENT_RECEIVED",
          "AWAITING_INFORMATION",
          "PAYMENT_SENT",
          "PAYMENT_DELIVERED",
          "PENDING_CANCELLATION",
          "CANCELLED",
          "RETURNED",
          "REJECTED",
          "DELIVERED_TO_SCHEME",
          "DELIVERED_TO_RECIPIENT_BANK"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "Combined-1": {
        "required": [
          "conditionDefiningFields",
          "conditions",
          "countrySpecificSchemas",
          "info",
          "routeDefiningFields",
          "rules",
          "schemas",
          "transactionReferences"
        ],
        "type": "object",
        "properties": {
          "info": {
            "$ref": "#/components/schemas/Info"
          },
          "rules": {
            "$ref": "#/components/schemas/Rules"
          },
          "schemas": {
            "$ref": "#/components/schemas/Schemas"
          },
          "conditions": {
            "type": "array",
            "description": "This section states the validations that apply in a Send Payout API request. It contains fields and values that define a condition ID.\n",
            "items": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/AnyCondition"
                },
                {
                  "$ref": "#/components/schemas/AllCondition"
                },
                {
                  "$ref": "#/components/schemas/NotCondition"
                }
              ]
            }
          },
          "routeDefiningFields": {
            "$ref": "#/components/schemas/RouteDefiningFields"
          },
          "maxTransactionAmount": {
            "$ref": "#/components/schemas/MaxTransactionAmountEquivalent"
          },
          "minTransactionAmount": {
            "$ref": "#/components/schemas/MinTransactionAmountEquivalent"
          },
          "transactionReferences": {
            "$ref": "#/components/schemas/TransactionReferences"
          },
          "countrySpecificSchemas": {
            "$ref": "#/components/schemas/CountrySpecificSchemas-1"
          },
          "conditionDefiningFields": {
            "$ref": "#/components/schemas/ConditionDefiningFields"
          },
          "clientDrivenConditionalFields": {
            "$ref": "#/components/schemas/ClientDrivenConditionalFields"
          }
        }
      },
      "TransactionStatus-3": {
        "type": "string",
        "description": "- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received\n- AWAITING_INFORMATION: Awaiting more information before transaction is processed .\n- PAYMENT_SENT: The payout has been submitted to the Network partner\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\n- PENDING_CANCELLATION: Cancel payout status is pending\n- CANCELLED - Payout is cancelled\n- RETURNED: Returned request is refunded to Originating Entity\n- REJECTED: Rejected request is refunded to Originating Entity\n",
        "example": "PAYMENT_SENT",
        "enum": [
          "PAYMENT_RECEIVED",
          "AWAITING_INFORMATION",
          "PAYMENT_SENT",
          "PAYMENT_DELIVERED",
          "PENDING_CANCELLATION",
          "CANCELLED",
          "RETURNED",
          "REJECTED"
        ]
      },
      "TransactionStatus-4": {
        "type": "string",
        "description": "- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received\n- AWAITING_INFORMATION: Awaiting more information before transaction is processed .\n- PAYMENT_SENT: The payout has been submitted to the Network partner\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account.\n- PENDING_CANCELLATION: Cancel payout status is pending\n- CANCELLED - Payout is cancelled\n- RETURNED: Returned request is refunded to Originating Entity\n- REJECTED: Rejected request is refunded to Originating Entity\n",
        "example": "PAYMENT_SENT",
        "enum": [
          "PAYMENT_RECEIVED",
          "AWAITING_INFORMATION",
          "PAYMENT_SENT",
          "PAYMENT_DELIVERED",
          "PENDING_CANCELLATION",
          "CANCELLED",
          "RETURNED",
          "REJECTED"
        ]
      },
      "TransactionStatus-1": {
        "type": "string",
        "description": "- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received\n- AWAITING_INFORMATION: More information required by Visa before transaction can be processed.\n- PAYMENT_SENT: The payout has been submitted to the Network partner\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- PENDING_CANCELLATION: Cancel payout status is pending\n- CANCELLED - Payout is cancelled\n- RETURNED: Returned request is refunded to Originating Entity\n- REJECTED: Rejected request is refunded to Originating Entity\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n",
        "example": "PAYMENT_SENT",
        "enum": [
          "PAYMENT_RECEIVED",
          "AWAITING_INFORMATION",
          "PAYMENT_SENT",
          "PAYMENT_DELIVERED",
          "PENDING_CANCELLATION",
          "CANCELLED",
          "RETURNED",
          "REJECTED",
          "DELIVERED_TO_SCHEME",
          "DELIVERED_TO_RECIPIENT_BANK"
        ]
      },
      "PullFundsDetails-4": {
        "type": "object",
        "properties": {
          "iBan": {
            "maxLength": 34,
            "minLength": 1,
            "type": "string",
            "description": "The IBAN, if configured.\n"
          },
          "bankName": {
            "description": "The bank name, if configured.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "accountNumber": {
            "maximum": 4,
            "minimum": 1,
            "type": "integer",
            "description": "The last 4 digits of the account number, if configured.\n"
          },
          "expectedDebitDateTime": {
            "description": "<b>MANDATORY.</b> The date and time when the debit request will be initiated.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "TransactionStatus-2": {
        "type": "string",
        "description": "Status of the transaction",
        "example": "APPROVED",
        "enum": [
          "APPROVED",
          "DECLINED",
          "REJECTED",
          "PENDING"
        ]
      },
      "RecipientCountryOfBirth-2": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Specifies the recipient's country of birth. ISO20022 field name: Creditor Country of Birth. Used for compliance and regulatory reporting in certain markets.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Must follow ISO 3166-1 alpha-3 standard (3-character Alpha-3 country code).</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid ISO 3166-1 alpha-3 country code</li>\n  <li>Uppercase alphabetic characters only (A–Z)</li>\n  <li>No spaces, numbers, or special characters</li>\n  <li>Field cannot be empty when required by market-specific compliance rules</li>\n</ul>",
        "example": "USA"
      },
      "PaymentInstrumentAddress": {
        "required": [
          "postalCode"
        ],
        "type": "object",
        "properties": {
          "postalCode": {
            "description": "Postal Code provided by the account holder for the primaryAccountNumber in the request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Address provided by the account holder for the primaryAccountNumber in the request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          }
        }
      },
      "ValidPayoutResponse-3": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds. \n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "ValidPayoutResponse-2": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds. \n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "ValidPayoutResponse-5": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-4"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "AFTOriginatorDetail-9": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor-9"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        }
      },
      "ValidPayoutResponse-4": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-1"
              }
            ]
          }
        }
      },
      "ValidPayoutResponse-7": {
        "required": [
          "validationResultCode"
        ],
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "validationDetails": {
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-5"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ],
            "exampleSetFlag": false
          },
          "validationResultCode": {
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RiskAssessmentData-4": {
        "type": "object",
        "properties": {
          "scpExemptionIndicator": {
            "$ref": "#/components/schemas/ScpExemptionIndicator-1"
          },
          "traExemptionIndicator": {
            "$ref": "#/components/schemas/TraExemptionIndicator-1"
          },
          "lowValueExemptionIndicator": {
            "description": "Low value exemption indicator",
            "allOf": [
              {
                "$ref": "#/components/schemas/LowValueExemptionIndicator-1"
              }
            ]
          },
          "scaEnvironmentOutageIndicator": {
            "$ref": "#/components/schemas/ScaEnvironmentOutageIndicator-1"
          },
          "delegatedAuthenticationIndicator": {
            "$ref": "#/components/schemas/DelegatedAuthenticationIndicator-3"
          },
          "trustedMerchantExemptionIndicator": {
            "$ref": "#/components/schemas/TrustedMerchantExemptionIndicator"
          }
        }
      },
      "ValidPayoutResponse-6": {
        "required": [
          "validationResultCode"
        ],
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "validationDetails": {
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-5"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "expectedPostingDate": {
            "$ref": "#/components/schemas/ExpectedPostingDateForValidate-2"
          },
          "validationResultCode": {
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RiskAssessmentData-3": {
        "type": "object",
        "properties": {
          "scpExemptionIndicator": {
            "$ref": "#/components/schemas/ScpExemptionIndicator"
          },
          "traExemptionIndicator": {
            "$ref": "#/components/schemas/TraExemptionIndicator"
          },
          "lowValueExemptionIndicator": {
            "$ref": "#/components/schemas/LowValueExemptionIndicator"
          },
          "scaEnvironmentOutageIndicator": {
            "$ref": "#/components/schemas/ScaEnvironmentOutageIndicator"
          },
          "delegatedAuthenticationIndicator": {
            "$ref": "#/components/schemas/DelegatedAuthenticationIndicator-2"
          },
          "trustedMerchantExemptionIndicator": {
            "$ref": "#/components/schemas/TrustedMerchantExemptionIndicator"
          }
        }
      },
      "PullFundsDetailsFundsNotRceived": {
        "required": [
          "expectedDebitDateTime",
          "originalDueDateTime"
        ],
        "type": "object",
        "properties": {
          "iBan": {
            "maximum": 34,
            "minimum": 1,
            "type": "string",
            "description": "The IBAN, if configured.\n"
          },
          "bankName": {
            "description": "The bank name, if configured.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "accountNumber": {
            "maximum": 4,
            "minimum": 1,
            "type": "integer",
            "description": "The last 4 digits of the account number, if configured.\n"
          },
          "originalDueDateTime": {
            "description": "The date and time when the amount was originally due.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "expectedDebitDateTime": {
            "description": "The date and time when the debit request was initiated.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "RiskAssessmentData-2": {
        "type": "object",
        "properties": {
          "scpExemptionIndicator": {
            "$ref": "#/components/schemas/ScpExemptionIndicator"
          },
          "traExemptionIndicator": {
            "$ref": "#/components/schemas/TraExemptionIndicator"
          },
          "lowValueExemptionIndicator": {
            "$ref": "#/components/schemas/LowValueExemptionIndicator"
          },
          "scaEnvironmentOutageIndicator": {
            "$ref": "#/components/schemas/ScaEnvironmentOutageIndicator"
          },
          "delegatedAuthenticationIndicator": {
            "$ref": "#/components/schemas/DelegatedAuthenticationIndicator-1"
          },
          "trustedMerchantExemptionIndicator": {
            "$ref": "#/components/schemas/TrustedMerchantExemptionIndicator"
          }
        }
      },
      "ValidPayoutResponse-8": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "$ref": "#/components/schemas/ExpectedPostingDateForValidate-3"
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference"
          }
        }
      },
      "AFTOriginatorDetail-3": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor-3"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        }
      },
      "FlexibleSettlementNotification-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/LimitReachedFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/EODFlexibleSettlementNotification-3"
          },
          {
            "$ref": "#/components/schemas/NearLimitReachedFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/SettlementOverdueFlexibleSettlementNotification-3"
          },
          {
            "$ref": "#/components/schemas/SettlementDueBreachedFlexibleSettlementNotification-3"
          },
          {
            "$ref": "#/components/schemas/ExposureInfoFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/PullFundsInitNotification-2"
          },
          {
            "$ref": "#/components/schemas/CurrencyInfoFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/PullFundsNotReceivedNotification-2"
          }
        ],
        "exampleSetFlag": false
      },
      "AFTOriginatorDetail-4": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-2"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor-4"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTOriginatorDetailAdditionalData"
            }
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode-1"
          }
        }
      },
      "RecipientIdentification-2": {
        "required": [
          "idNumber",
          "idType"
        ],
        "type": "object",
        "properties": {
          "idType": {
            "type": "string",
            "description": "Type of identification document. Valid types include: CUID (Customer ID), NTID (National ID), PASN (Passport), DRLN (Driver License), TXIN (Tax ID), CPNY (Company ID), PRXY (Proxy ID)\n",
            "example": "PASN",
            "enum": [
              "CUID",
              "NTID",
              "PASN",
              "DRLN",
              "TXIN",
              "CPNY",
              "PRXY",
              "SSNB",
              "ARNB",
              "LAWE",
              "MILI",
              "TRVL",
              "EMAL",
              "PHON",
              "BTHD"
            ]
          },
          "idNumber": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Recipient identification number (issued by a government or similar authority). ISO20022 field name - \"Creditor Private Identification\" or \"Creditor Organisation Identification\".\n",
            "example": "A1234567"
          },
          "idOwnerType": {
            "type": "string",
            "description": "Type of identification owner - Individual or Company",
            "example": "I",
            "enum": [
              "I",
              "C"
            ]
          },
          "idIssueCountry": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Recipient identification issuing country. ISO20022 field name - \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\".<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>3-digit numeric or 3-character alpha ISO country code.</li>\n</ul>",
            "example": "USA"
          }
        },
        "description": "Recipient identification document details"
      },
      "FlexibleSettlementNotification-16": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/LimitReachedFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/EODFlexibleSettlementNotification-4"
          },
          {
            "$ref": "#/components/schemas/NearLimitReachedFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/SettlementOverdueFlexibleSettlementNotification-4"
          },
          {
            "$ref": "#/components/schemas/SettlementDueBreachedFlexibleSettlementNotification-4"
          },
          {
            "$ref": "#/components/schemas/ExposureInfoFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/PullFundsInitNotification-3"
          },
          {
            "$ref": "#/components/schemas/CurrencyInfoFlexibleSettlementNotification-2"
          }
        ],
        "exampleSetFlag": false
      },
      "AFTOriginatorDetail-1": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        }
      },
      "AFTOriginatorDetail-2": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor-2"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        }
      },
      "FlexibleSettlementNotification-14": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/LimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/EODFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/NearLimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementOverdueFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/SettlementDueBreachedFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/ExposureInfoFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/PullFundsInitNotification-1"
          },
          {
            "$ref": "#/components/schemas/CurrencyInfoFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/PullFundsNotReceivedNotification-1"
          }
        ]
      },
      "AFTOriginatorDetail-7": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor-7"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        }
      },
      "AFTOriginatorDetail-8": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor-8"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        }
      },
      "ValidPayoutResponse-1": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "RecipientIdentification-1": {
        "required": [
          "idNumber",
          "idType"
        ],
        "type": "object",
        "properties": {
          "idType": {
            "type": "string",
            "description": "Type of identification document. Valid types include: CUID (Customer ID), NTID (National ID), PASN (Passport), DRLN (Driver License), TXIN (Tax ID), CPNY (Company ID), PRXY (Proxy ID)\n",
            "example": "PASN",
            "enum": [
              "CUID",
              "NTID",
              "PASN",
              "DRLN",
              "TXIN",
              "CPNY",
              "PRXY",
              "SSNB",
              "ARNB",
              "LAWE",
              "MILI",
              "TRVL",
              "EMAL",
              "PHON",
              "BTHD"
            ]
          },
          "idNumber": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Recipient identification number (issued by a government or similar authority). ISO20022 field name - \"Creditor Private Identification\" or \"Creditor Organisation Identification\".\n",
            "example": "A1234567"
          },
          "idOwnerType": {
            "type": "string",
            "description": "Type of identification owner - Individual or Company",
            "example": "I",
            "enum": [
              "I",
              "C"
            ]
          },
          "idIssueCountry": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Recipient identification issuing country. Format: 3-character ISO (Alpha-3) country code. ISO20022 field name - \"Creditor Private Identification Issuer Country\" or  \"Creditor Organisation Identification Issuer Country\".\n",
            "example": "USA"
          }
        },
        "description": "Recipient identification document details"
      },
      "AFTOriginatorDetail-5": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-3"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor-4"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTOriginatorDetailAdditionalData"
            }
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode-1"
          }
        }
      },
      "FlexibleSettlementNotification-17": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/LimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/EODFlexibleSettlementNotification-5"
          },
          {
            "$ref": "#/components/schemas/NearLimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementOverdueFlexibleSettlementNotification-5"
          },
          {
            "$ref": "#/components/schemas/SettlementDueBreachedFlexibleSettlementNotification-5"
          },
          {
            "$ref": "#/components/schemas/ExposureInfoFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/PullFundsInitNotification-4"
          },
          {
            "$ref": "#/components/schemas/CurrencyInfoFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/PullFundsNotReceivedNotification-3"
          }
        ]
      },
      "AFTOriginatorDetail-6": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTCardAcceptor-6"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        }
      },
      "FlexibleSettlementNotification-11": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/LimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/EODFlexibleSettlementNotification-2"
          },
          {
            "$ref": "#/components/schemas/NearLimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementOverdueFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementDueBreachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/ExposureInfoFlexibleSettlementNotification"
          }
        ]
      },
      "VisaRateProvided": {
        "maxLength": 70,
        "minLength": 1,
        "type": "string",
        "description": "Indicates the entity that provided the exchange rate used for the transaction",
        "example": "VISA FX Rate"
      },
      "CardQueryResponse-6": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-5"
          }
        ]
      },
      "CurrencyInfoReason": {
        "type": "string",
        "description": "The reason denotes why a particular currency change has happened.\n1. FLEXIBLE_SETTLEMENT_DISABLED – The flexible settlement is disabled for the client. This applies only when the currentStatus is DISABLED. \n2. CURRENCY_DISABLED - The currency is disabled for the client. This applies only when the currentStatus is DISABLED.\n3. FREEZE_MANUAL – The currency has been manually frozen. This applies only when the currentStatus is DISABLED.\n4. FREEZE_SETTLEMENT_DUE - The currency is automatically frozen following a settlement breach and will stay frozen until the outstanding amount is paid. This applies only when the currentStatus is DISABLED.\n5. FREEZE_ALL_FREEZE_ENABLED - This currency is frozen because another currency is overdue, and the all-freeze setting is enabled. This applies only when the currentStatus is DISABLED.\n6. UNFREEZE_MANUAL - The currency has been manually enabled temporarily. This applies only when the currentStatus is ENABLED.\n7. NO_DUES - The currency is enabled and can be used to send payouts. This applies only when the currentStatus is ENABLED.\n",
        "example": "FLEXIBLE_SETTLEMENT_DISABLED",
        "enum": [
          "FLEXIBLE_SETTLEMENT_DISABLED",
          "CURRENCY_DISABLED",
          "FREEZE_MANUAL",
          "FREEZE_SETTLEMENT_DUE",
          "FREEZE_ALL_FREEZE_ENABLED",
          "UNFREEZE_MANUAL",
          "NO_DUES"
        ]
      },
      "CardQueryResponse-7": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-6"
          }
        ]
      },
      "CardQueryResponse-4": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-3"
          }
        ]
      },
      "CardQueryResponse-5": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-4"
          }
        ]
      },
      "OCTPaymentFacilitator": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/OCTAdditionalAcceptor"
          }
        },
        "description": "Payment facilitator details for Original Credit Transaction"
      },
      "CardQueryResponse-8": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-7"
          }
        ]
      },
      "CardQueryResponse-9": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-8"
          }
        ]
      },
      "AcnvPaymentCredentialReference-2": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "AuthenticationData": {
            "$ref": "#/components/schemas/AcnvAuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData-1"
          }
        },
        "description": "External reference to a payment credential"
      },
      "SenderContactEmail-1": {
        "maxLength": 99,
        "minLength": 1,
        "type": "string",
        "description": "Sender email address.",
        "format": "email",
        "example": "john.smith@example.com"
      },
      "AcnvPaymentCredentialReference-1": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "AuthenticationData": {
            "$ref": "#/components/schemas/AcnvAuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData-1"
          }
        },
        "description": "External reference to a payment credential"
      },
      "SystemsTraceAuditNumber-1": {
        "type": "number",
        "description": "<b>Conditional</b><br><br>\nMerchants must link the Merchant-Initiated Transaction with the original transaction using the Transaction Identifier that was generated for the original cardholder-initiated transaction. For standing-instruction MITs (recurring, installment, and unscheduled COF), acquirers can use the Transaction Identifier generated for the previous transaction in the series to link subsequent transactions.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain the Transaction Identifier of the original transaction or previous transaction in the series for MIT use cases.</li>\n  <li>This field is required to identify whether a transaction is merchant-initiated.</li>\n</ul>",
        "example": 123456
      },
      "ContactNumber-4": {
        "maxLength": 16,
        "minLength": 1,
        "pattern": "^\\+[1-9]\\d{1,14}$",
        "description": "Contact phone number\n+ symbol followed by digits, no other symbols, e.g. +447700123456 \n(note, refer ISO spec E.164)\n",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "SenderContactEmail-2": {
        "maxLength": 254,
        "minLength": 5,
        "type": "string",
        "description": "Sender email address.",
        "format": "email",
        "example": "john.smith@example.com"
      },
      "AcnvPaymentCredentialReference-4": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "AuthenticationData": {
            "$ref": "#/components/schemas/AcnvAuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData"
          }
        },
        "description": "External reference to a payment credential"
      },
      "SenderContactEmail-3": {
        "maxLength": 99,
        "minLength": 1,
        "type": "string",
        "description": "Contains the sender's email address for communication and notifications. Format Must follow standard email format: local-part@domain<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid email address</li>\n  <li>No spaces or invalid symbols</li>\n</ul>",
        "format": "email",
        "example": "john.smith@example.com"
      },
      "AcnvPaymentCredentialReference-3": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID",
              "PHONE",
              "EMAIL",
              "DIRECTORY_ALIASID",
              "PAYMENT_CREDENTIAL_ID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br> For \"PAYMENT_CREDENTIAL_ID\" length is 1-36 characters. <br>For \"PHONE\", \"EMAIL\", \"DIRECTORY_ALIASID\", length is 1-128 characters. <br> <br> If phone number is used for alias, this should be provided in accordance with ITU-T E.164 (2010) number structure. Please note that in the E.164 format, the '+' sign is not included. Below are some examples of phone numbers with different country codes - <br><table><thead><tr><th>Country</th><th>Country Code</th><th>Examples</th></tr></thead><tbody><tr><td>United States</td><td>1</td><td>1650xxxxxxx</td></tr><tr><td>Ukraine</td><td>380</td><td>38067xxxxxxx</td></tr><tr><td>Belarus</td><td>375</td><td>37529xxxxxxx</td></tr><tr><td>Kazakhstan</td><td>7</td><td>7701xxxxxxx</td></tr><tr><td>United Kingdom</td><td>44</td><td>4478xxxxxxxx</td></tr><tr><td>Singapore</td><td>65</td><td>659xxxxxxx</td></tr><tr><td>Hong Kong</td><td>852</td><td>8529xxxxxxx</td></tr><tr><td>Kenya</td><td>254</td><td>254701xxxxxx</td></tr></tbody></table>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "authenticationData": {
            "$ref": "#/components/schemas/AcnvAuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData"
          }
        },
        "description": "External reference to a payment credential"
      },
      "ContactNumber-1": {
        "maxLength": 16,
        "minLength": 1,
        "pattern": "^\\+[1-9]\\d{1,14}$",
        "type": "string",
        "description": "Contact phone number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n(note, refer ISO spec E.164)\n",
        "example": "447700123456"
      },
      "RecipientAdditionalData-2": {
        "description": "Additional fields that are needed in order to complete the additional screening. The additional fields can be included as name value pairs (Field name, Field value)",
        "items": {
          "required": [
            "name",
            "value"
          ],
          "properties": {
            "name": {
              "description": "Originating Entity to send additional recipient information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the name component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataName-1"
                }
              ],
              "exampleSetFlag": false
            },
            "value": {
              "description": "Originating Entity to send additional recipient information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the value  component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataValue-1"
                }
              ],
              "exampleSetFlag": false
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "FeeProgramIndicator": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Indicator for the fee program",
        "example": "FPI"
      },
      "RecipientAdditionalData-1": {
        "type": "array",
        "description": "Additional fields that are needed in order to complete the additional screening. The additional fields can be included as name value pairs (Field name, Field value)",
        "items": {
          "required": [
            "name",
            "value"
          ],
          "type": "object",
          "properties": {
            "name": {
              "description": "Originating Entity to send additional recipient information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the name component of the name-value pair.\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataName"
                }
              ]
            },
            "value": {
              "description": "Originating Entity to send additional recipient information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the value  component of the name-value pair.\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataValue"
                }
              ]
            }
          }
        }
      },
      "ContactNumber-3": {
        "maxLength": 16,
        "minLength": 1,
        "pattern": "^\\+[1-9]\\d{1,14}$",
        "type": "string",
        "description": "Contact phone number\n+ symbol followed by digits, no other symbols, e.g. +447700123456 \n(note, refer ISO spec E.164)  \n"
      },
      "ContactNumber-2": {
        "maxLength": 16,
        "minLength": 1,
        "pattern": "^\\+[1-9]\\d{1,14}$",
        "type": "string",
        "description": "Contact phone number\n+ symbol followed by digits, no other symbols, e.g. +447700123456 \n(note, refer ISO spec E.164)\n",
        "example": "447700123456"
      },
      "SenderAddress-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "When present, this field contains sender's Address<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Each subfield must comply with Visa Direct specifications for length and format. Country code must follow ISO 3166-1</li>\n  <li>alpha-2 standard.</li>\n</ul><br><br>\n<b>Note:</b> This field is not applicable for domestic Colombia transactions"
      },
      "IndividualIdTypeAccount": {
        "type": "string",
        "enum": [
          "P",
          "D",
          "N",
          "T",
          "F"
        ]
      },
      "Network": {
        "type": "string",
        "description": "Network\n",
        "enum": [
          "VISA",
          "VISA_DEBIT",
          "VISA_CREDIT",
          "E",
          "C",
          "G",
          "8",
          "Y",
          "F",
          "S",
          "L",
          "H",
          "W",
          "N",
          "Z",
          "Q",
          "M",
          "V"
        ]
      },
      "AFTSenderDetail-8": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/SenderCard-1"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address-2"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-4"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-2"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-3"
          }
        }
      },
      "AFTSenderDetail-9": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/AFTSenderCard-3"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName-2"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType-1"
          },
          "address": {
            "$ref": "#/components/schemas/Address-3"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName-1"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName-1"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName-1"
          },
          "occupation": {
            "description": "Sender occupation. This field contains the sender's occupation details. May be required for certain markets or compliance checks.<br><br><b>Validation Rules:</b><br><ul><li>Must not contain special characters or exclusively numeric values.</li></ul>",
            "allOf": [
              {
                "$ref": "#/components/schemas/Occupation-1"
              }
            ]
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-5"
          },
          "nationality": {
            "description": "<b>Conditional</b><br><br>Sender nationality using a 3-character ISO 3166 Alpha-3 country code. Maps to ISO20022 Creditor Nationality. based on country-specific requirements.<br><br><b>Validation Rules:</b><br><ul><li>Must contain a valid ISO 3166 Alpha-3 country code.</li></ul>",
            "allOf": [
              {
                "$ref": "#/components/schemas/Nationality-2"
              }
            ]
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-3"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTSenderDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-2"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-6"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AftSenderPaymentCredentialReference-3"
          }
        },
        "description": "Sender details for Account Funding Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\nAn object MUST contain exactly one of either 'card' or 'paymentCredentialReference'.\n"
      },
      "200TransactionStatus": {
        "type": "string",
        "description": "- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received\n",
        "enum": [
          "PAYMENT_RECEIVED"
        ]
      },
      "CountrySpecificSchemas-1": {
        "type": "object",
        "description": "This section lists fields with country-specific definition (e.g., datatype, length, pattern or format that vary by country).\nIt contains valid JSON Schemas.\n"
      },
      "RequestId": {
        "type": "string",
        "description": "Request identifier.\n",
        "format": "uuid"
      },
      "AFTRRequestData-6": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTROriginatorDetail-4"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRTransactionDetail-5"
          }
        },
        "description": "Details for Account Funding Transaction Reversal"
      },
      "ReimbursementFee": {
        "type": "number",
        "description": "Fee amount for reimbursement",
        "format": "double",
        "example": 1.5
      },
      "AFTRRequestData-5": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTROriginatorDetail-3"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRTransactionDetail-5"
          }
        },
        "description": "Details for Account Funding Transaction Reversal"
      },
      "SettlementInfo": {
        "required": [
          "settlementResponsibilityFlag"
        ],
        "type": "object",
        "properties": {
          "givUpdatedFlag": {
            "$ref": "#/components/schemas/GivUpdatedFlag"
          },
          "settlementServiceFlag": {
            "$ref": "#/components/schemas/SettlementServiceFlag"
          },
          "givPreviouslyUpdatedFlag": {
            "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag"
          },
          "settlementResponsibilityFlag": {
            "$ref": "#/components/schemas/SettlementResponsibilityFlag"
          }
        }
      },
      "AFTRRequestData-3": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTRSenderDetail"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTROriginatorDetail-2"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRTransactionDetail-3"
          }
        },
        "description": "Details for Account Funding Transaction Reversal"
      },
      "AFTRRequestData-2": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTROriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRTransactionDetail-2"
          }
        },
        "description": "Details for Account Funding Transaction Reversal"
      },
      "AFTRRequestData-1": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTRSenderDetail"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTROriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRTransactionDetail-1"
          }
        },
        "description": "Details for Account Funding Transaction Reversal"
      },
      "ValidateAccountTransactionDetail": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ServiceLocationState": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "State of the service location"
      },
      "PaymentFacilitator-9": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/AFTAdditionalAcceptor"
          }
        }
      },
      "PaymentFacilitator-7": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/AFTAdditionalAcceptor"
          }
        }
      },
      "PullFundsNotReceivedNotification": {
        "required": [
          "accountId",
          "eventType",
          "fundingDetails",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "PULL_FUNDS_NOT_RECEIVED"
            ]
          },
          "fundingDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FundingDetailsFundsNotReceived"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "PaymentFacilitator-8": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/AFTAdditionalAcceptor"
          }
        }
      },
      "RoutingNetworkId": {
        "maxLength": 30,
        "minLength": 1,
        "type": "string"
      },
      "PaymentFacilitator-1": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/AFTAdditionalAcceptor"
          }
        }
      },
      "PaymentFacilitator-2": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/AFTAdditionalAcceptor"
          }
        }
      },
      "PaymentFacilitator-6": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/AFTAdditionalAcceptor"
          }
        }
      },
      "PaymentFacilitator-3": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/AFTAdditionalAcceptor"
          }
        }
      },
      "PaymentFacilitator-4": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId-1"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName-1"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-2"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/AFTAdditionalAcceptor"
          }
        }
      },
      "UpdatePayoutRequest": {
        "required": [
          "actionCode",
          "idType",
          "initiatingPartyId",
          "payoutMethod"
        ],
        "type": "object",
        "properties": {
          "idType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionIdType-1"
              }
            ]
          },
          "comments": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UpdateComments"
              }
            ]
          },
          "actionCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/B2BCActionCode"
              }
            ]
          },
          "payoutMethod": {
            "type": "string",
            "description": "Payout Methods allowed for Update Payout Request\n",
            "enum": [
              "C"
            ]
          },
          "fxConversionRate": {
            "description": "To be used when beneficiary/creditor account is credited in currency other than Settlement Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ConversionRate"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "Instructed Amount of payment for actionCode is BENECONFIRM\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "Instructed Currency of payment for actionCode is BENECONFIRM\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "beneficiaryCreditDateTime": {
            "description": "Date and Time of funds availability to Beneficiary/Creditor for actionCode is BENECONFIRM\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "mastercardMerchantPaymentGatewayId": {
            "maxLength": 11,
            "minLength": 1,
            "type": "string",
            "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.<b> Only applicable for pull reversal for Cards</b>\n"
          }
        }
      },
      "VerificationCardAcceptorAddress-1": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "City of the merchant or the funds transfer originator/operator",
            "example": "SAN FRANCISCO"
          },
          "county": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "County of the funds transfer operator/originator",
            "example": "SFO"
          },
          "country": {
            "maxLength": 3,
            "minLength": 2,
            "type": "string",
            "description": "3-character alpha country code for the country of the merchant or the originator or the funds transfer operator",
            "example": "USA"
          },
          "stateCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "2-character abbreviated state code or territory code",
            "example": "CA"
          },
          "postalCode": {
            "maxLength": 9,
            "minLength": 5,
            "type": "string",
            "description": "Zip/Postal code of the merchant or the funds transfer operator/originator",
            "example": "94105"
          }
        },
        "description": "Physical address, URL, or telephone number for the merchant or funds transfer originator/operator"
      },
      "VerificationCardAcceptorAddress-2": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "City of the merchant or the funds transfer originator/operator",
            "example": "SAN FRANCISCO"
          },
          "county": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "County of the funds transfer operator/originator",
            "example": "SFO"
          },
          "country": {
            "maxLength": 3,
            "minLength": 2,
            "type": "string",
            "description": "3-digit numeric or 3-character alpha ISO country code for the country of the merchant or the originator or the funds transfer operator",
            "example": "USA"
          },
          "stateCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "2-character abbreviated state code or territory code",
            "example": "CA"
          },
          "postalCode": {
            "maxLength": 9,
            "minLength": 5,
            "type": "string",
            "description": "Zip/Postal code of the merchant or the funds transfer operator/originator",
            "example": "94105"
          }
        },
        "description": "Physical address, URL, or telephone number for the merchant or funds transfer originator/operator"
      },
      "AFTSenderDetail-2": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/AFTSenderCard-1"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address-1"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-7"
          },
          "PaymentCredentialReference": {
            "$ref": "#/components/schemas/AftSenderPaymentCredentialReference-1"
          }
        },
        "description": "Sender details for Account Funding Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\nAn object MUST contain exactly one of either 'card' or 'paymentCredentialReference'.\n"
      },
      "AFTSenderDetail-3": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/AFTSenderCard-1"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address-1"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-7"
          },
          "PaymentCredentialReference": {
            "$ref": "#/components/schemas/AftSenderPaymentCredentialReference-1"
          }
        },
        "description": "Sender details for Account Funding Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\nAn object MUST contain exactly one of either 'card' or 'paymentCredentialReference'.\n"
      },
      "AccountWalletSenderIndividual": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Ultimate Debtor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "DigitalAssetPayoutRequestAltered-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-9"
          }
        ],
        "exampleSetFlag": false
      },
      "AFTSenderDetail-1": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/SenderCard"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address-1"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-2"
          }
        }
      },
      "RecipientLastName-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nRecipient last name. The length of first name and last name combined must be at least 3 characters. ISO20022 field name: Creditor Last Name. Format Alphabetic characters only (A–Z) May include spaces or hyphens for compound names<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Required when recipientDetail.name is not provided</li>\n  <li>Combined length of firstName and lastName ≥ 3 characters</li>\n  <li>Must not contain only numeric characters</li>\n  <li>Must not contain special symbols (except hyphen -)</li>\n  <li>Trim leading and trailing spaces</li>\n  <li>required when \"name\" is not provided.</li>\n</ul>",
        "example": "O'Connor"
      },
      "AFTSenderDetail-6": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/SenderCard"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address-1"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-2"
          }
        }
      },
      "SenderIdentificationList": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nValid values : \n* P- Passport \n* D-Driving License\n* N-National Id\n* T-Tax Id\n* L-Legal Entity Registration Number\n* F-Foreign Id\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdType"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "AFTSenderDetail-7": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/SenderCard-1"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address-2"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-3"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-2"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-3"
          }
        }
      },
      "AFTSenderDetail-4": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/SenderCard"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address-1"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-2"
          }
        }
      },
      "InitiatingPartyId-3": {
        "description": "Identifier assigned by Visa to uniquely identify the Originating Entity who initiates the transaction\n\nISO20022 field name: Initiating Party Identification<br>\nVisa uses integer instead of string(1-35) for uniformed value generation and presentation.\n",
        "format": "int64",
        "example": 100111,
        "exampleSetFlag": true,
        "types": [
          "integer"
        ]
      },
      "AFTSenderDetail-5": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/AFTSenderCard-2"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address-1"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-7"
          },
          "PaymentCredentialReference": {
            "$ref": "#/components/schemas/AftSenderPaymentCredentialReference-2"
          }
        },
        "description": "Sender details for Account Funding Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\nAn object MUST contain exactly one of either 'card' or 'paymentCredentialReference'.\n"
      },
      "InitiatingPartyId-2": {
        "type": "integer",
        "description": "Identifier assigned by Visa to uniquely identify the Originating Entity who initiates the transaction\n\nISO20022 field name: <InitgPtyId> - InitiatingPartyIdentification, new identification of the initiating party. Visa uses integer instead of string(1-35) for uniformed value generation and presentation.\n",
        "format": "int64",
        "example": 100111
      },
      "MinTransactionAmountEquivalent": {
        "type": "array",
        "items": {
          "required": [
            "currencyOfMinAmount",
            "minAmountValue"
          ],
          "type": "object",
          "properties": {
            "condition": {
              "type": "string",
              "description": "It refers to an 'id' value in the conditions[] array."
            },
            "minAmountValue": {
              "type": "number",
              "description": "The minimum amount value allowed per transaction."
            },
            "currencyOfMinAmount": {
              "type": "string",
              "description": "The (Alpha-3) ISO-4217 currency code of the minimum amount value allowed per transaction. This could be in recipient bank currency or in a more common currency like USD, EUR or GBP."
            }
          }
        }
      },
      "Province-1": {
        "maxLength": 25,
        "minLength": 1,
        "description": "When present, this field contains individual recipient's address subdivision Major code, state or province",
        "example": "New Mexico",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "TransactionCurrencyCode": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "ISO 4217 currency code",
        "example": "USD"
      },
      "TransactionAmount": {
        "type": "number",
        "description": "Transaction amount",
        "format": "double",
        "example": 123.45
      },
      "Type": {
        "type": "string",
        "description": "Identifies the type of sender or recipient - Individual or Company \n* I - Individual\n* C - Company\n",
        "example": "I",
        "enum": [
          "I",
          "C"
        ]
      },
      "QuoteId-1": {
        "type": "integer",
        "description": "This is a unique FX quote ID generated by Visa for a payout currency pair.         \n",
        "format": "int64",
        "example": 987654321
      },
      "QuoteId-2": {
        "description": "This is a unique FX quote ID generated by Visa for a payout currency pair.\n",
        "format": "int64",
        "example": 987654321,
        "exampleSetFlag": true,
        "types": [
          "integer"
        ]
      },
      "InitiatingPartyId-1": {
        "type": "integer",
        "description": "A unique identifier assigned by the initiating party for the API consumer",
        "format": "int64",
        "example": 987654321
      },
      "DigitalAssetPayoutRequestAltered-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-2"
          }
        ]
      },
      "DigitalAssetPayoutRequestAltered-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-1"
          }
        ]
      },
      "RecipientIdentificationNumberIndividual-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer's VAT registration number for tax identification.",
        "example": "AB123456789"
      },
      "DigitalAssetPayoutRequestAltered-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-4"
          }
        ]
      },
      "DigitalAssetPayoutRequestAltered-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-3"
          }
        ]
      },
      "CardQueryResponse-2": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardPayoutResponse-2"
          }
        ]
      },
      "DigitalAssetPayoutRequestAltered-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-6"
          }
        ]
      },
      "CardQueryResponse-3": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-2"
          }
        ]
      },
      "DigitalAssetPayoutRequestAltered-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-5"
          }
        ]
      },
      "ServiceProcessingType-1": {
        "required": [
          "requestType"
        ],
        "type": "object",
        "properties": {
          "requestType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "<b>Valid Values:</b><br>\n<ul>\n  <li>00: (Not a deferred OCT). This value indicates that the request is not a deferred OCT. Visa will send this value to the recipient issuer in the request. This acts as the default value if not provided in the request.</li>\n  <li>01: (Originator hold). This value indicates that the originating acquirer has held the OCT for a period of time before sending to Visa and is requesting for Visa to treat the transaction as a deferred OCT. Visa will send this value to the recipient issuer in the request.</li>\n  <li>02: (Visa deferred OCT hold, default interval). This value indicates that the originating acquirer is requesting Visa to apply the default holding period of 48 hours upon receipt and process the request as a deferred OCT. Visa will send this value to the recipient issuer in the request.</li>\n  <li>03: (Visa deferred OCT hold, client defined interval). This value indicates that the originating acquirer is requesting Visa to apply the client defined holding period (provided in deferredDateTime field) upon receipt and process the request as a deferred OCT. Visa will send this value to the recipient issuer in the request.</li>\n</ul>\n<b>Note:</b> The value of 01 is reserved for originating acquirers that meet certain conditions. Contact your regional client support representative for more information."
          },
          "deferredDateTime": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "This field is conditionally required for requestType 03. This field identifies when the transaction needs to be processed by Visa. Format of this value will be in CCYYMMDDHHMM (GMT). The provided deferredDateTime should be within 24 to 48 hours of receipt of the request by Visa."
          }
        }
      },
      "DigitalAssetPayoutRequestAltered-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail-1"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-8"
          }
        ],
        "exampleSetFlag": false
      },
      "CardQueryResponse-1": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-1"
          }
        ]
      },
      "DigitalAssetPayoutRequestAltered-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-7"
          }
        ]
      },
      "PayoutSpeed-3": {
        "type": "string",
        "description": "Originating Entity to indicate the desired payout speed for the payment. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nISO20022 field name: Instruction Priority\n",
        "example": "STANDARD",
        "enum": [
          "STANDARD",
          "PREMIUM"
        ]
      },
      "PayoutSpeed-2": {
        "description": "Originating Entity to indicate the desired payout speed for the payment. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nISO20022 field name: Instruction Priority\n",
        "example": "standard",
        "enum": [
          "STANDARD",
          "PREMIUM"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "RecipientContactNumberType": {
        "type": "string",
        "description": "Type of contact number",
        "example": "MOBILE",
        "enum": [
          "MOBILE",
          "WORK",
          "HOME"
        ]
      },
      "PayoutSpeed-1": {
        "description": "Originating Entity to indicate the desired payout speed for the payment. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nISO20022 field name: Instruction Priority\n",
        "example": "STANDARD",
        "enum": [
          "STANDARD",
          "PREMIUM"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "CardAcceptorLegalBusinessName": {
        "maxLength": 25,
        "minLength": 1,
        "type": "string",
        "description": "Legal business name of the card acceptor",
        "example": "ACME Corporation"
      },
      "PaymentFacilitator": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/AFTAdditionalAcceptor"
          }
        }
      },
      "IdentityGroup": {
        "title": "IdentityGroup",
        "required": [
          "groupLabel",
          "groupName",
          "identityFields",
          "mandatory"
        ],
        "type": "object",
        "properties": {
          "groupName": {
            "type": "string",
            "description": "The name of the metadata element/enum.\nThis generic Identity Group object can represent either 'Recipient Identity Field Group object' or 'Bank Account Registration Field Group object' . \nEnum value signifies the particular metadata element. \n\nFor example : \n a) if enum is \"address\", this can contain array of 'IdentityField' object where each object can represent elements like addressLine1, addressLine2, city, countryCode, postalCode etc    \n\n b) enum can be \"identificationList\", which contains array of \"IdentityField' objects, one of the IdentityField object can have elementName=\"idType\" and inputType=\"list\", in this scenario array of IdentityListItem will have \n [\n   {\n     \"label\": \"Passport\",\n     \"value\": \"Passport\"\n   },\n   {\n     \"label\": \"National ID Card\",\n     \"value\": \"National ID Card\"\n   },\n   {\n     \"label\": \"Driving License\",\n     \"value\": \"Driving License\"\n   }\n ], \n second 'IdentityField' Object -> elementName as \"identificationNumber\" with inputType=\"text\" \n third 'IdentityField' Object -> elementName as \"identificationCountry\" with inputType=\"text\" \n fourth 'IdentityField' Object -> elementName as \"validFromDate\" with inputType=\"text\"\n fifth  'IdentityField' Object -> elementName as \"validToDate\" with inputType=\"text\" and so on.\n\n c) If enum is \"additionalData\",this will have array of two 'IdentityField' objects, one representing 'additionalDataKey' and other one 'additionalDataValue'.\n\n d) If enum is \"name\", \"middleName\" may be required for some countries (e.g. Africa). This can be accommodated by appending a space and then middleName to <firstName>\n",
            "enum": [
              "bank",
              "address",
              "name",
              "additionalData",
              "identificationList",
              "legalEntityIdentity",
              "contactInfo",
              "birthInfo"
            ]
          },
          "mandatory": {
            "type": "boolean",
            "description": "Indicates if the identity group is mandatory."
          },
          "groupLabel": {
            "type": "string",
            "description": "Displays a label for this group of identity fields."
          },
          "identityFields": {
            "type": "array",
            "description": "This type defines a list of recipient identity fields.",
            "items": {
              "$ref": "#/components/schemas/IdentityField"
            }
          }
        },
        "description": "This type defines a recipient identity data group. Each group is normally represented as a section of fields on the UI. 'groupLabel' is the UI test to display as a name for this section. 'mandatory' indicates whether all section is mandatory. 'elementName' is the name of the element in the request for the corresponding section."
      },
      "OCTOriginatorDetail-11": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTOriginatorDetailAdditionalData-1"
            }
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "CardResponseTokenData-1": {
        "type": "object",
        "properties": {
          "minimumAccountRange": {
            "maximum": 999999999,
            "minimum": 1,
            "type": "integer"
          },
          "tokenAssuranceMethod": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string"
          },
          "additionalTokenRespInfo": {
            "$ref": "#/components/schemas/AdditionalTokenRespInfo-1"
          }
        }
      },
      "LedgerNotification": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "VauFlag-1": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Indicates whether VAU processing was applied to the transaction.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>Y – replacement occurred</li>\n  <li>N – No replacements</li>\n</ul>",
        "example": "Y"
      },
      "CardResponseTokenData-2": {
        "type": "object",
        "properties": {
          "last4ofPAN": {
            "$ref": "#/components/schemas/Last4ofPAN-1"
          },
          "minimumAccountRange": {
            "$ref": "#/components/schemas/MinimumAccountRange-1"
          },
          "tokenAssuranceMethod": {
            "$ref": "#/components/schemas/TokenAssuranceMethod-1"
          },
          "additionalTokenRespInfo": {
            "$ref": "#/components/schemas/AdditionalTokenRespInfo"
          }
        }
      },
      "TotalAmountOverdue-1": {
        "description": "Total amount overdue.",
        "format": "double",
        "exampleSetFlag": false,
        "types": [
          "number"
        ]
      },
      "400ErrorResponses-9": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "400ErrorResponses-7": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "400ErrorResponses-8": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "400ErrorResponses-5": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "CurrencyDetails-2": {
        "required": [
          "currencyCode",
          "currentStatus",
          "reason"
        ],
        "properties": {
          "reason": {
            "$ref": "#/components/schemas/CurrencyInfoReason-1"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "currentStatus": {
            "$ref": "#/components/schemas/CurrentStatus-1"
          },
          "previousStatus": {
            "$ref": "#/components/schemas/PreviousStatus-1"
          },
          "lastModifiedDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "400ErrorResponses-6": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "400ErrorResponses-3": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "SenderAccountPayoutAddress-4": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-2"
              }
            ]
          },
          "buildingNumber": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BuildingNumber"
              }
            ]
          }
        }
      },
      "400ErrorResponses-4": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "SenderAccountPayoutAddress-3": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          },
          "buildingNumber": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BuildingNumber"
              }
            ]
          }
        }
      },
      "CurrencyDetails-1": {
        "required": [
          "currencyCode",
          "currentStatus",
          "reason"
        ],
        "properties": {
          "reason": {
            "$ref": "#/components/schemas/CurrencyInfoReason-1"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "currentStatus": {
            "$ref": "#/components/schemas/CurrentStatus-1"
          },
          "previousStatus": {
            "$ref": "#/components/schemas/PreviousStatus-1"
          },
          "lastModifiedDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "Schemas": {
        "type": "object",
        "description": "This section lists fields with common definition (e.g., same datatype and length) across all countries.\nIt contains valid JSON Schemas.\n"
      },
      "400ErrorResponses-1": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "SenderAccountPayoutAddress-2": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "400ErrorResponses-2": {
        "type": "array",
        "description": "Comprehensive array of errors",
        "items": {
          "$ref": "#/components/schemas/ErrorResponse-3"
        }
      },
      "SenderAccountPayoutAddress-1": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          },
          "buildingNumber": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BuildingNumber"
              }
            ]
          }
        }
      },
      "RouteDefinitionRecallPerCountryAndCurrency": {
        "required": [
          "metadataVersion",
          "metadataVersionDate",
          "notificationId",
          "notificationType",
          "payoutMethod",
          "recipientCountryCode",
          "recipientCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Payout method code. Valid values are B- Bank , W- Wallet (This ENUM is not currently supported. It is for future use.)\n",
            "enum": [
              "B",
              "w"
            ]
          },
          "notificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique identifier for the notification. In case of a recall (i.e., when the notificationType is \"RECALL\"), this field will contain the notificationId of a previously sent notification that is being recalled.\n",
            "example": "58e0a7d7-eebc-11d8-9669-0800200c9a66"
          },
          "metadataVersion": {
            "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
            "type": "string",
            "description": "This is the version of the route definition recalled by VISA. \nIt is in the format <major-version>.<minor-version>.<patch>.\n\n* patch updates are documentation updates only and should not influence the processing of a payout transaction. Example: changes to the description of Purpose of Payment code.\n\n* minor-version updates indicate backward compatible changes in the route validation rules on a payout transaction. Example: addition of a new Purpose of Payment code.\n\n* major-version updates indicate backward incompatible changes in the route validation rules on a payout transaction. Such changes are usually regulatory in nature or due to partner migration on Visa's backend. Example: Purpose of Payment code changing from a \"conditional\"/ \"recommended\" to a \"required\" field.\n",
            "example": "1.0.0"
          },
          "notificationType": {
            "type": "string",
            "description": "Notification Type. Valid value- RECALL\n",
            "enum": [
              "RECALL"
            ]
          },
          "metadataVersionDate": {
            "type": "string",
            "description": "This was the expected go-live date of the recalled metadata version.",
            "format": "date"
          },
          "recipientCountryCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-3166 (Alpha-3) country code\n",
            "example": "USA"
          },
          "recipientCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-4217 (Alpha-3) currency code\n",
            "example": "USD"
          },
          "recipientWalletOperator": {
            "type": "string",
            "description": "Wallet operator enumerated names. This field will be present only when the payoutMethod is W. recipientWalletOperator is for future use as payoutMethod=W is not currently supported.\n",
            "example": "BKASH"
          }
        }
      },
      "ReturnReasonDetails-5": {
        "required": [
          "code"
        ],
        "properties": {
          "code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReturnReasonCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "description": {
            "$ref": "#/components/schemas/ReturnReasonCodeDescription-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ReturnReasonDetails-6": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "$ref": "#/components/schemas/ReturnReasonCode"
          },
          "description": {
            "$ref": "#/components/schemas/ReturnReasonCodeDescription"
          }
        }
      },
      "AccountVerificationOnlyRequest": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "type": "object",
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: \"Creditor Private Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "type": "string",
            "description": "The ID of the initiating party.",
            "example": "123456"
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "ReturnReasonDetails-3": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReturnReasonCode-2"
              }
            ]
          },
          "description": {
            "$ref": "#/components/schemas/ReturnReasonCodeDescription"
          }
        }
      },
      "ReturnReasonDetails-4": {
        "required": [
          "code"
        ],
        "properties": {
          "code": {
            "$ref": "#/components/schemas/ReturnReasonCode-3"
          },
          "description": {
            "$ref": "#/components/schemas/ReturnReasonCodeDescription-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ReturnReasonDetails-1": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReturnReasonCode-1"
              }
            ]
          },
          "comment": {
            "$ref": "#/components/schemas/ReturnReasonCodeComment"
          },
          "description": {
            "$ref": "#/components/schemas/ReturnReasonCodeDescription-1"
          }
        }
      },
      "ReturnReasonDetails-2": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReturnReasonCode-1"
              }
            ]
          },
          "description": {
            "$ref": "#/components/schemas/ReturnReasonCodeDescription-1"
          }
        }
      },
      "AccountQueryErrorResponse-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-4"
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "errorDetails": {
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-5"
                },
                "exampleSetFlag": false,
                "types": [
                  "array"
                ]
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is accepted and will be processed & notified status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "FundingDetails": {
        "required": [
          "currencyCode",
          "totalAmountDue"
        ],
        "type": "object",
        "properties": {
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "description": "Total amount due by due date. Pulled in this request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TotalAmountDue"
              }
            ]
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails"
          }
        }
      },
      "AcquirerCountryCode": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Acquirer country code"
      },
      "PostalCode": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "When present, this field contains individual recipient's address postal code.",
        "example": "94320"
      },
      "CardAuthenticationResults-1": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "A Visa-defined code indicating Online Card Authentication Method results. Refer to <a href=\"/request_response_codes#card_authentication_results\">cardAuthenticationResults</a>",
        "example": "1"
      },
      "CompanyName-1": {
        "maxLength": 70,
        "minLength": 2,
        "description": "Company name",
        "example": "Visa",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "RecipientName": {
        "maxLength": 30,
        "minLength": 1,
        "type": "string",
        "description": "Full name of recipient. Conditionally required when \"firstName\" and \"lastName\" are not provided. Must not contain exclusively numeric characters. Must not contain special symbols.\n",
        "example": "Jane Marie Doe"
      },
      "OCTRecipientDetailAdditionalData": {
        "anyOf": [
          {
            "title": "localNameData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "localNameData<br><br>This object is used to provide the recipient's local name data. This object is required for transactions where the recipient's local name data is required."
              },
              "value": {
                "$ref": "#/components/schemas/RecipientLocalNameData"
              }
            }
          },
          {
            "title": "contactInformationList",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "contactInformationList<br><br>Contact Information list of recipient.<br /><br />Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/ContactInformationList"
              }
            }
          },
          {
            "title": "ancillaryRecipientDetails",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "ancillaryRecipientDetails<br><br>Ancillary recipient details.<br><br>Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/AncillaryRecipientDetails"
              }
            }
          }
        ]
      },
      "CardAcceptorLegalBusinessName-1": {
        "maxLength": 25,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nAcceptor's legal business name associated with the card acceptor identification code for OCT transactions.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Alphanumeric, spaces, and limited punctuation.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match official business registration details.</li>\n  <li>This field is required for all Money Transfer OCTs and for all cross border transactions when issuer is in Canada or Australia.</li>\n</ul>",
        "example": "ABC Retail LLC"
      },
      "VerificationRequestData-1": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-1"
          }
        },
        "description": "Request data for checking card verification"
      },
      "DigitalAssetValidPayoutResponse-7": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "VerificationRequestData-2": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-2"
          }
        },
        "description": "Request data for checking card verification"
      },
      "DigitalAssetValidPayoutResponse-6": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "AdjustmentCardAcceptor-1": {
        "required": [
          "id",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId-2"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-2"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode-1"
          }
        },
        "description": "Card acceptor details for Adjustment Transaction"
      },
      "VerificationRequestData-5": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-5"
          }
        },
        "description": "Request data for checking card verification"
      },
      "DigitalAssetValidPayoutResponse-3": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-3"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "DigitalAssetValidPayoutResponse-2": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "VerificationRequestData-6": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-6"
          }
        },
        "description": "Request data for checking card verification"
      },
      "VerificationRequestData-3": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-3"
          }
        },
        "description": "Request data for checking card verification"
      },
      "VerificationRequestData-4": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-4"
          }
        },
        "description": "Request data for checking card verification"
      },
      "DigitalAssetValidPayoutResponse-4": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-4"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "VerificationRequestData-9": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-4"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-9"
          }
        },
        "description": "Request data for checking card verification"
      },
      "VerificationRequestData-7": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-7"
          }
        },
        "description": "Request data for checking card verification"
      },
      "VerificationRequestData-8": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail-8"
          }
        },
        "description": "Request data for checking card verification"
      },
      "Date": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "a Date",
        "format": "date"
      },
      "RecipientIdentificationNumberIndividual": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Unique identifier for the recipient. This is used to identify the recipient in the system. Conditional - Required in certain markets.\n"
      },
      "ExposureInfoDetails": {
        "required": [
          "currencyCode",
          "flexibleAmountLimit",
          "flexibleAmountRemaining",
          "flexibleAmountUtilized"
        ],
        "type": "object",
        "properties": {
          "dueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/TotalAmountOverdue"
          },
          "flexibleAmountLimit": {
            "$ref": "#/components/schemas/FlexibleAmountLimit"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "flexibleAmountUtilized": {
            "$ref": "#/components/schemas/FlexibleAmountUtilized"
          },
          "flexibleAmountRemaining": {
            "$ref": "#/components/schemas/FlexibleAmountRemaining"
          }
        }
      },
      "SenderMiddleName-1": {
        "maxLength": 35,
        "minLength": 2,
        "type": "string",
        "description": "Sender middle name or middle initial when sender is an individual Format<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must not contain exclusively numeric characters or special symbols</li>\n</ul>",
        "example": "Anne"
      },
      "AccountQueryErrorResponse-15": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "DigitalAssetSenderIsCompany-3": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/CompanyName"
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          }
        }
      },
      "DigitalAssetValidPayoutResponse-1": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "AccountQueryErrorResponse-13": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-5"
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "errorDetails": {
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-5"
                },
                "exampleSetFlag": false,
                "types": [
                  "array"
                ]
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is accepted and will be processed & notified status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "OriginatorDetailAddress": {
        "required": [
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "type": "string",
            "description": "Originating Entity City",
            "example": "SAN FRANCISCO"
          },
          "state": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Originating Entity State Code. Required if Originating Entity country is US or Canada.",
            "example": "CA"
          },
          "county": {
            "type": "string",
            "description": "Originating Entity Country Sub Division Minor code",
            "example": "ALAMEDA"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Originating Entity country code.",
            "example": "USA"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Originating Entity Postal Code. Required if Originating Entity country is US or Canada.",
            "example": "94105"
          },
          "addressLine": {
            "type": "string",
            "description": "Originating Entity address line",
            "example": "123 MAIN STREET"
          },
          "originatorId": {
            "type": "string",
            "description": "An alphanumeric field that uniquely identifies the Originating Entity. For Push to Card transactions, should populate Card Acceptor ID (CAID).",
            "example": "ORIG12345678"
          },
          "originatorName": {
            "type": "string",
            "description": "The name of the merchant or originating entity sending the payment instruction to Visa.",
            "example": "ACME PAYMENTS"
          },
          "originatorLegalBusinessName": {
            "type": "string",
            "description": "The legal business name of the merchant or originating entity sending the payment instruction to Visa.",
            "example": "ACME CORPORATION INC."
          }
        },
        "description": "Address details of the originator"
      },
      "ScpExemptionIndicator-1": {
        "type": "string",
        "description": "Secure Corporate Payment (SCP) Indicator. If this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>FALSE – Secure corporate payment exemption not claimed/requested</li>\n  <li>TRUE – Secure corporate payment exemption claimed/requested</li>\n</ul>",
        "example": "HONORED",
        "enum": [
          "true",
          "false"
        ]
      },
      "AccountQueryErrorResponse-12": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "GivUpdatedFlag": {
        "type": "string",
        "description": "Flag indicating if the Guaranteed Issuer Value (GIV) was updated in this transaction",
        "example": "N"
      },
      "DigitalAssetSenderIsCompany-2": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderType"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountQueryErrorResponse-16": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "DigitalAssetSenderIsCompany-1": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "$ref": "#/components/schemas/CompanyName-1"
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutNotificationReceivedRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutNotificationReceivedRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "SignedAmount-1": {
        "format": "double",
        "example": 12.34,
        "exampleSetFlag": true,
        "types": [
          "number"
        ]
      },
      "PayoutStatusesInProgress-10": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: More information required by Visa before transaction can be processed.\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated if 'fundingStatus' or 'expectedPostingDate' fields change value.\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-7"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nThis field is not populated at PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-6"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails-3"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              }
            }
          }
        }
      },
      "FXRateRequest": {
        "required": [
          "destinationCurrencyCode",
          "initiatingPartyId",
          "rateProductCode",
          "sourceCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rateProductCode": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method \n",
            "enum": [
              "E"
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "sourceCurrencyCode": {
            "description": "Source amount 3-alpha currency code in ISO 4217\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "destinationCurrencyCode": {
            "description": "Destination amount 3-alpha currency code in ISO 4217\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          }
        }
      },
      "AFTRecipientDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "identificationNumberBusiness<br><br><b>Conditional.</b><br><br>This is an alphanumeric value that carries the recipient's identification number issued to the recipient by the government or an authorized national entity. This field is to be used if the recipient is a business (e.g. Disbursements) <br><br> If recipientIdentificationNumberIndividual is not populated, then this field needs to be populated mandatorily for Brazil domestic trasactions when businessApplicationId has any of the below values:<br><br>AA<br>PP<br>TU<br>BI<br>WT<br>FT<br><br>For Argentina domestic purchase transactions this field contains the merchant’s value-added tax (VAT) registration number or single business reference number (SBRN)."
              },
              "value": {
                "maxLength": 20,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "identificationNumberIndividual<br><br><b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
              },
              "value": {
                "maxLength": 13,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "localNameData<br><br>This object is used to provide the recipient's local name data. This object is required for transactions where the recipient's local name data is required."
              },
              "value": {
                "$ref": "#/components/schemas/RecipientLocalNameData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "contactInformationList<br><br>Contact Information list of recipient.<br /><br />Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/ContactInformationList"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "ancillaryRecipientDetails<br><br>Ancillary recipient details.<br><br>Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/AncillaryRecipientDetails"
              }
            }
          }
        ]
      },
      "PosEnvironment": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "POS environment"
      },
      "PayoutNotificationReceivedRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutNotificationReceivedRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-3"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutNotificationReceivedRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutNotificationReceivedRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "CardExpiryDate-1": {
        "maxLength": 4,
        "minLength": 4,
        "pattern": "^(0[1-9]|1[0-2])(2[0-9]|3[0-9])$",
        "type": "string",
        "description": "Specifies the expiration date of the sender's card. This value is required for card-based transactions to validate the card's validity period.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be in MMYY format.</li>\n  <li>Must represent a valid future date.</li>\n</ul>",
        "example": "1225  (December 2025)"
      },
      "PayoutNotificationReceivedRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutNotificationReceivedRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "FlexibleAmountRemaining": {
        "type": "number",
        "description": "Remaining amount of liquidity available.",
        "format": "double"
      },
      "PayoutNotificationReceivedRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "TraExemptionIndicator-1": {
        "type": "string",
        "description": "TRA Exemption Indicator. If this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely. Clients requesting this exemption should also provide the following request parameters: visaMerchantIdentifier value, which is a unique identifier assigned by Visa for each merchant included in the identification program. Cardholder Authentication Verification Value (CAVV) OR Token Authentication Verification Value (TAVV)<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>FALSE – TRA exemption not claimed/requested</li>\n  <li>TRUE – TRA exemption claimed/requested</li>\n</ul>",
        "example": "true",
        "enum": [
          "true",
          "false"
        ]
      },
      "PayoutDigitalAssetRequestAltered": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID"
              }
            ]
          }
        }
      },
      "WalletQueryPendingOnlyCancelledResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "VerificationTransactionDetail-18": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-4"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "WalletQueryPendingOnlyCancelledResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-4"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus-2"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "200CardTransactionStatus": {
        "type": "string",
        "description": "- PAYMENT_DELIVERED: Visa has approved the card payout instruction, fund is moved\n- PAYMENT_DECLINED: Visa has declined the card payout instruction, fund is not moved\n- PAYMENT_ERROR: Visa encountered error when processing the card payout instruction, fund is in unknown state\n",
        "enum": [
          "PAYMENT_DELIVERED",
          "PAYMENT_DECLINED",
          "PAYMENT_ERROR"
        ]
      },
      "WalletQueryPendingOnlyCancelledResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-5"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RecipientAdditionalData": {
        "type": "array",
        "description": "Additional fields that are needed in order to complete the additional screening. The additional fields can be included as name value pairs (Field name, Field value)",
        "items": {
          "required": [
            "name",
            "value"
          ],
          "type": "object",
          "properties": {
            "name": {
              "description": "Originating Entity to send additional recipient information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the name component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataName"
                }
              ]
            },
            "value": {
              "description": "Originating Entity to send additional recipient information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the value  component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataValue"
                }
              ]
            }
          }
        }
      },
      "WalletQueryPendingOnlyCancelledResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "TotalAmountOverdueSettlementDueBreached": {
        "type": "number",
        "description": "Total amount currently overdue. This represents only the amounts that have actually breached their due date/time, excluding any future-dated amounts that are not yet due.\n",
        "format": "double"
      },
      "AFTResponseData": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTResponseTransactionDetail"
          }
        },
        "description": "Account Funding Transaction (AFT) response data structure"
      },
      "MotoECIIndicator": {
        "maximum": 8,
        "minimum": 1,
        "type": "number",
        "description": "Identifies the level of security used in an electronic commerce transaction or the type of mail or telephone order. Defaults to 7 for US and 5 for rest of the world for e-Commerce transactions.",
        "example": 7
      },
      "IdType-1": {
        "type": "string",
        "description": "Type of identification type.",
        "enum": [
          "TRANSACTION_IDENTIFIER",
          "CLIENT_REFERENCE_ID"
        ]
      },
      "IndividualSenderIdentificationListWallet": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \nValid values : \n* P- Passport \n* D-Driving License\n* N-National Id\n* T-Tax Id\n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeWallet"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "IdType-3": {
        "description": "When present, this field contains the type of identification document.\n\nValid values:\n* `P` - Passport\n* `D` - Driving License\n* `N` - National Id\n* `T` - Tax Id\n* `L` - Legal Entity Registration Number\n* `F` - Foreign Id\n",
        "example": "P",
        "enum": [
          "P",
          "D",
          "N",
          "T",
          "L",
          "F"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "IdType-2": {
        "type": "string",
        "description": "Identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* BTHD - Date of birth \n* CUID - Customer identification - unspecified \n* NTID - National identification \n* PASN - Passport number \n* DRLN - Driver license \n* TXIN - Tax identification \n* CPNY - Company registration number \n* PRXY - Proxy identification \n* SSNB - Social security number \n* ARNB - Alien registration number \n* LAWE - Law enforcement identification \n* MILI - Military identification \n* TRVL - Travel identification - non-passport \n* EMAL - Email \n* PHON - Phone number\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n",
        "example": "PASN",
        "enum": [
          "BTHD",
          "CUID",
          "NTID",
          "PASN",
          "DRLN",
          "TXIN",
          "CPNY",
          "PRXY",
          "SSNB",
          "ARNB",
          "LAWE",
          "MILI",
          "TRVL",
          "EMAL",
          "PHON"
        ]
      },
      "ReturnReasonCode": {
        "maxLength": 5,
        "minLength": 5,
        "type": "string",
        "description": "If the Transaction Status is RETURNED or REJECTED then Return reason code will be populated\n\nISO20022 field name: Payment Return - Reason Code  \n\nFor a complete list of reject/return codes and descriptions please visit <a href='/capabilities/visa-direct-account-and-wallet/docs-error-codes'>Visa Direct Account and Wallet - Error Codes</a>\n",
        "example": "RE303"
      },
      "VerificationTransactionDetail": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData"
          },
          "networkId": {
            "minimum": 4,
            "maxLength": 4,
            "type": "integer",
            "description": "<p>This contains a code that specifies the network to be used for transmission of the message and determines the program rules that apply to the transaction.</p>",
            "example": 2
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "OCTCardVerificationResults-1": {
        "type": "object",
        "properties": {
          "cvv2ResultCode": {
            "$ref": "#/components/schemas/Cvv2ResultCode-1"
          }
        }
      },
      "AdditionalDataValue-1": {
        "maxLength": 100,
        "minLength": 1,
        "description": "Value of the field.",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "WalletSenderTransactorDetailWithID": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual"
          },
          {
            "$ref": "#/components/schemas/WalletSenderIsCompany"
          }
        ]
      },
      "SenderIndividual-11": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender, conditionally required when firstName and lastName are not provided.",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n\nISO20022 field name: Debtor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name: Ultimate Debtor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Birth Date \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Ultimate Debtor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "SenderIndividual-10": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "City-1": {
        "maxLength": 35,
        "minLength": 1,
        "description": "When present, this field contains individual recipient's city",
        "example": "Santa Fe",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AncillaryRecipientDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "This field identifies if the ancillary recipient is a business or an individual. The valid value are: 'B' for Business and 'I' for Individual."
          },
          "address": {
            "$ref": "#/components/schemas/AncillaryRecipientDetailAddress"
          },
          "lastName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains ancillary recipient's last name"
          },
          "firstName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains ancillary recipient's first name"
          },
          "middleName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains ancillary recipient's middle name"
          }
        }
      },
      "SenderTransactorDetail-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-7"
          },
          {
            "$ref": "#/components/schemas/SenderCompany-1"
          }
        ]
      },
      "SenderTransactorDetail-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-6"
          },
          {
            "$ref": "#/components/schemas/SenderCompany-2"
          }
        ]
      },
      "SenderTransactorDetail-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-9"
          },
          {
            "$ref": "#/components/schemas/SenderCompany"
          }
        ]
      },
      "SenderTransactorDetail-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-8"
          },
          {
            "$ref": "#/components/schemas/SenderCompany-2"
          }
        ]
      },
      "SenderTransactorDetail-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-3"
          },
          {
            "$ref": "#/components/schemas/SenderCompany"
          }
        ]
      },
      "SenderTransactorDetail-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-2"
          },
          {
            "$ref": "#/components/schemas/SenderCompany-2"
          }
        ]
      },
      "SenderTransactorDetail-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-5"
          },
          {
            "$ref": "#/components/schemas/SenderCompany"
          }
        ]
      },
      "SenderTransactorDetail-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-4"
          },
          {
            "$ref": "#/components/schemas/SenderCompany-2"
          }
        ]
      },
      "ActionCode": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Standard two-digit code that specifies the action taken by the card issuer on this transaction. Refer to <a href=\"https://developer.visa.com/request_response_codes#action_code\">action codes</a>",
        "example": "00"
      },
      "SenderTransactorDetail-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-1"
          },
          {
            "$ref": "#/components/schemas/SenderCompany-1"
          }
        ]
      },
      "IdentificationList": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "idtype": {
              "type": "string",
              "enum": [
                "CUID",
                "NTID",
                "PASN",
                "DRLN",
                "TXIN",
                "CPNY",
                "PRXY",
                "SSNB",
                "ARNB",
                "LAWE",
                "MILI",
                "TRVL",
                "EMAL",
                "PHON",
                "BTHD"
              ]
            },
            "idNumber": {
              "maxLength": 35,
              "minLength": 1,
              "type": "string"
            },
            "idOwnerType": {
              "type": "string",
              "enum": [
                "C",
                "I"
              ]
            },
            "idIssueCountry": {
              "maxLength": 3,
              "minLength": 3,
              "type": "string"
            }
          }
        }
      },
      "Wallet-3": {
        "required": [
          "accountIdentifier",
          "accountIdentifierType",
          "countryCode",
          "currencyCode",
          "operatorName"
        ],
        "type": "object",
        "properties": {
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "operatorName": {
            "type": "string",
            "description": "This identifies the operator that has issued the account to the recipient and is going to receive and post the funds to the recipient’s wallet.\n(Refer to Visa Direct Endpoint Guide on list of supported Wallet Operators).\n"
          },
          "accountIdentifier": {
            "maxLength": 210,
            "minLength": 1,
            "type": "string",
            "description": "The wallet recipient's actual account identifier associated with the wallet operator (e.g., wallet address - phone/email/username that identifies the account associated with the wallet operator)\n"
          },
          "accountIdentifierType": {
            "type": "string",
            "description": "The type of account identifier used by the recipient. \n\nSupported values are PHONENUMBER, EMAIL and USERNAME.          \n",
            "example": "PHONENUMBER",
            "enum": [
              "PHONENUMBER",
              "EMAIL",
              "USERNAME"
            ]
          }
        },
        "description": "Recipient's wallet object\n\nConditional object when payoutMethod has value 'W'\n"
      },
      "EndToEndId-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Identifier assigned by the Originating Entity's customer to track the transaction end-to-end\n\nConditional: Required if payout to a wallet recipient\n\nISO20022 field name: end-to-end identification \n",
        "example": "5003f6a02c4411b2aa5747378ae5331"
      },
      "Wallet-2": {
        "required": [
          "accountIdentifier",
          "accountIdentifierType",
          "countryCode",
          "currencyCode",
          "operatorName"
        ],
        "type": "object",
        "properties": {
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "operatorName": {
            "type": "string",
            "description": "This identifies the operator that has issued the account to the recipient and is going to receive and post the funds to the recipient’s wallet.\n(Refer to Payouts Endpoint Guide on list of supported Wallet Operators).\n"
          },
          "accountIdentifier": {
            "maxLength": 210,
            "minLength": 1,
            "type": "string",
            "description": "The wallet recipient's actual account identifier associated with the wallet operator (e.g., wallet address - phone/email/username that identifies the account associated with the wallet operator)\n"
          },
          "accountIdentifierType": {
            "type": "string",
            "description": "The type of account identifier used by the recipient. \n\nSupported values are PHONENUMBER, EMAIL and USERNAME.          \n",
            "example": "PHONENUMBER",
            "enum": [
              "PHONENUMBER",
              "EMAIL",
              "USERNAME"
            ]
          }
        },
        "description": "Recipient's wallet object\n\nConditional object when payoutMethod has value 'W'\n"
      },
      "EndToEndId-2": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Identifier assigned by the Originating Entity's customer to track the transaction end-to-end\n\nConditional: Required if payout to a wallet recipient\n\nISO20022 field name: end-to-end identification \n",
        "example": "5003f6a02c4411b2aa5747378ae5331"
      },
      "Wallet-1": {
        "required": [
          "accountIdentifier",
          "accountIdentifierType",
          "countryCode",
          "currencyCode",
          "operatorName"
        ],
        "type": "object",
        "properties": {
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "operatorName": {
            "type": "string",
            "description": "This identifies the non bank wallet operator that has issued the account to the recipient and is going to receive and post the funds to the recipient’s wallet.\n(Refer to Payouts Endpoint Guide on list of supported Wallet Operators).\n",
            "enum": [
              "WECHATPAY"
            ]
          },
          "accountIdentifier": {
            "maxLength": 210,
            "minLength": 1,
            "type": "string",
            "description": "The wallet recipient's actual account identifier associated with the wallet operator (e.g., wallet address - phone/email/username that identifies the account associated with the wallet operator)\n"
          },
          "accountIdentifierType": {
            "type": "string",
            "description": "The type of account identifier used by the recipient. \n\nSupported values are PHONENUMBER, EMAIL and USERNAME.          \n",
            "example": "PHONENUMBER",
            "enum": [
              "PHONENUMBER",
              "EMAIL",
              "USERNAME"
            ]
          }
        },
        "description": "Recipient's wallet object\n\nConditional object when payoutMethod has value 'W'\n"
      },
      "EndToEndId-3": {
        "maxLength": 35,
        "minLength": 1,
        "description": "Identifier assigned by the Originating Entity's customer to track the transaction end-to-end\n\nConditional: Required if payout to a wallet recipient\n\nISO20022 field name: end-to-end identification\n",
        "example": "5003f6a02c4411b2aa5747378ae5331",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "LimitReachedDetails": {
        "required": [
          "currencyCode",
          "flexibleAmountLimit"
        ],
        "type": "object",
        "properties": {
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "flexibleAmountLimit": {
            "$ref": "#/components/schemas/FlexibleAmountLimit"
          }
        }
      },
      "SettlementCurrencyCode": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "ISO 4217 3-character alpha currency code for the settlement amount",
        "example": "USD"
      },
      "AdjustmentRequestData": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/AdjustmentCardAcceptor"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "3-digit numeric or 3-character alpha ISO country code <br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "example": "840 USA"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "posData": {
                "required": [
                  "motoECIIndicator",
                  "panEntryMode",
                  "posConditionCode"
                ],
                "type": "object",
                "properties": {
                  "panEntryMode": {
                    "$ref": "#/components/schemas/PanEntryMode"
                  },
                  "motoECIIndicator": {
                    "$ref": "#/components/schemas/MotoECIIndicator"
                  },
                  "posConditionCode": {
                    "$ref": "#/components/schemas/PosConditionCode"
                  }
                }
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdjustmentTransactionDetailAdditionalData"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "VisaMerchantIdentifier": {
        "maxLength": 8,
        "minLength": 8,
        "type": "string",
        "description": "Visa merchant identifier"
      },
      "Date-3": {
        "maxLength": 10,
        "minLength": 10,
        "description": "a Date",
        "format": "date",
        "example": "1980-02-01",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "EventNotification-1": {
        "required": [
          "eventType",
          "initiatingPartyId",
          "payoutId"
        ],
        "type": "object",
        "properties": {
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "eventType": {
            "type": "string",
            "description": "Possible events on a transaction\n- PENDING_NETWORK_REVIEW: The payout is currently under review at Network Partner.\n- NETWORK_REVIEW_CLOSED: The Network Partner review is now closed. Refer to payout status for additional information.\n",
            "example": "PENDING_NETWORK_REVIEW",
            "enum": [
              "PENDING_NETWORK_REVIEW",
              "NETWORK_REVIEW_CLOSED"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          }
        }
      },
      "MagneticStripeData": {
        "type": "object",
        "properties": {
          "track1Data": {
            "maxLength": 76,
            "minLength": 1,
            "type": "string",
            "description": "Track 1 data"
          },
          "track2Data": {
            "maxLength": 38,
            "minLength": 1,
            "type": "string",
            "description": "Track 2 data"
          }
        },
        "description": "Magnetic stripe data"
      },
      "Date-1": {
        "maxLength": 10,
        "minLength": 10,
        "pattern": "^\\d\\d\\d\\d\\-\\d\\d\\-\\d\\d$",
        "type": "string",
        "example": "1980-02-01"
      },
      "Date-2": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "a Date",
        "format": "date"
      },
      "AdjustPayoutRequest-1": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAdjustmentRequest-1"
          }
        ]
      },
      "AFTRCardResponseTokenData": {
        "type": "object",
        "properties": {
          "last4ofPAN": {
            "$ref": "#/components/schemas/Last4ofPAN"
          },
          "tokenAssuranceMethod": {
            "$ref": "#/components/schemas/TokenAssuranceMethod"
          },
          "additionalTokenRespInfo": {
            "$ref": "#/components/schemas/AdditionalTokenRespInfo"
          }
        }
      },
      "VerificationTransactionDetail-11": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData"
          },
          "networkId": {
            "minimum": 4,
            "maxLength": 4,
            "type": "integer",
            "description": "<p>This contains a code that specifies the network to be used for transmission of the message and determines the program rules that apply to the transaction.</p>",
            "example": 2
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "VerificationTransactionDetail-12": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-2"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "VerificationTransactionDetail-13": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-2"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "VerificationTransactionDetail-14": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-2"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "DigitalAssetPayoutRequestAltered": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered"
          }
        ]
      },
      "VerificationTransactionDetail-15": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-2"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "VerificationTransactionDetail-16": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData"
          },
          "networkId": {
            "minimum": 4,
            "maxLength": 4,
            "type": "integer",
            "description": "<p>This contains a code that specifies the network to be used for transmission of the message and determines the program rules that apply to the transaction.</p>",
            "example": 2
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "ErrorResponse": {
        "required": [
          "details",
          "reason",
          "status"
        ],
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The short description of the error."
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "type": "integer",
            "description": "3 digit HTTP status code",
            "example": 400
          },
          "details": {
            "type": "array",
            "items": {
              "required": [
                "code",
                "message"
              ],
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "A short code indicating the specific error that occurred."
                },
                "message": {
                  "type": "string",
                  "description": "The long description of the specific error that occurred."
                },
                "location": {
                  "type": "string",
                  "description": "The place in the incoming message that the particular error occurred."
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "The long description of the error"
          }
        }
      },
      "AccountWalletRecipientIdentificationList": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountWalletIdType"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "RecipientReferenceNumber-1": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "Reference number of the recipient. If the transaction is a money transfer, pre-paid load, or credit card bill pay, and if the sender intends to fund the transaction with a non-financial instrument (for example, cash), a reference number unique to the sender is required. If the transaction is a funds disbursement, the field is required.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be unique for the sender when applicable.</li>\n  <li>This field is required if senderAccountNumber is not sent.</li>\n</ul>",
        "example": "REF123456789"
      },
      "DigitalAssetQueryPendingCancelledResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "DigitalAssetQueryPendingCancelledResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "TerminalId-2": {
        "maxLength": 8,
        "type": "string",
        "description": "Identifies the terminal at the card acceptor's location where the transaction originated. This helps track the source device for transaction processing and fraud monitoring. Format:<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Allowed Characters: Alphanumeric (letters and numbers).</li>\n  <li>Must match the terminal ID registered during Visa Direct program setup.</li>\n  <li>Should remain consistent for transactions from the same terminal.</li>\n  <li>Avoid spaces unless explicitly allowed by API specification.</li>\n</ul>",
        "example": "TERM1234"
      },
      "TerminalId-1": {
        "maxLength": 8,
        "minLength": 1,
        "type": "string",
        "description": "The identifier for the terminal at a card acceptor location. If sending transactions from a card not present environment, use the same value for all transactions. An identification code of fewer than 8 positions must be left-justified and the remainder of the field space-filled.\n"
      },
      "200CardQueryStatus": {
        "type": "string",
        "description": "- PAYMENT_DELIVERED: Visa has approved the card payout instruction, fund is moved\n- PAYMENT_DECLINED: Visa has declined the card payout instruction, fund is not moved\n- PAYMENT_RETURNED: Visa has reverted the card payout instruction, fund is not moved\n- PAYMENT_ERROR: Visa encountered error when processing the card payout instruction, fund is in unknown state\n",
        "enum": [
          "PAYMENT_DELIVERED",
          "PAYMENT_DECLINED",
          "PAYMENT_RETURNED",
          "PAYMENT_ERROR"
        ]
      },
      "AFTRResponseCardAcceptor-1": {
        "type": "object",
        "properties": {
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-2"
          }
        }
      },
      "AFTResponseOriginatorDetail-1": {
        "type": "object",
        "properties": {
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTResponseCardAcceptor-1"
          }
        }
      },
      "MinimumAccountRange": {
        "type": "integer",
        "description": "Minimum account range"
      },
      "VerificationRequestData": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/VerificationOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/VerificationTransactionDetail"
          }
        },
        "description": "Request data for checking card verification"
      },
      "LowValueExemptionIndicator-1": {
        "type": "string",
        "description": "This field is present in the API response only if the following conditions are met: optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma-separated values in the API request. Low Value exemption was claimed in the acquirer request OR the issuer chooses to approve the transaction as the amount was below the issuer-set low value and velocity counts limits.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>HONORED – Low value exemption validated/honored</li>\n  <li>NOT_HONORED – Low value exemption failed validation/not honored</li>\n</ul><br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>This field is present in the API response only if the exemption was claimed and optionalResponseParameters includes \"RISKASSESSMENTDATA\".</li>\n</ul>",
        "example": "HONORED",
        "enum": [
          "true",
          "false"
        ]
      },
      "AccountPayoutRequest-32": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-8"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-30"
          }
        ],
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountPayoutRequest-33": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/AccountTransactionDetail-9"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-31"
          }
        ]
      },
      "AccountPayoutRequest-30": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-6"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-28"
          }
        ]
      },
      "AccountPayoutRequest-31": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-7"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-29"
          }
        ]
      },
      "CardVerificationResponse": {
        "required": [
          "requestId",
          "verificationStatus"
        ],
        "type": "object",
        "properties": {
          "requestId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RequestId"
              }
            ]
          },
          "verficationStatus": {
            "type": "string",
            "description": "Card verification status\nCOMPLETED - Request was completed and result is available\nNOT_COMPLETED -  Partner's end payment entity not available.\n",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "cardVerificationDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardVerificationDetail"
              }
            ]
          }
        }
      },
      "AccountQueryPendingOnlyCancelledResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "DigitalAssetPayoutRequestAltered-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail-3"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-10"
          }
        ]
      },
      "AFTSenderDetailAdditionalData": {
        "anyOf": [
          {
            "title": "localNameData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "localNameData<br><br>This object is used to provide the sender's local name data. This object is required for transactions where the sender's local name data is required."
              },
              "value": {
                "$ref": "#/components/schemas/SenderLocalNameData"
              }
            }
          },
          {
            "title": "contactInformationList",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "contactInformationList<br><br>Contact Information list of sender.<br /><br />Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/ContactInformationList"
              }
            }
          },
          {
            "title": "ancillarySenderDetails",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "ancillarySenderDetails<br><br>Ancillary sender details.<br><br>Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/AncillarySenderDetails"
              }
            }
          }
        ]
      },
      "DigitalAssetQueryPendingCancelledResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus-2"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutAdjustmentRequest": {
        "required": [
          "amount",
          "clientReferenceId",
          "initiatingPartyId",
          "payoutId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "The amount of the transaction, inclusive of all fees assessed for the transaction, including currency conversion fees. Minimum: 0, Maximum: 999999999.999, Allowed fractional digits: 3.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "payoutId": {
            "description": "Clients shall send the Visa transaction identifier returned in the response of PullFundsTransactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "adjustmentType": {
            "type": "string",
            "description": "Adjustment type to indicate the type of adjustment. Default:pullTransferCredit\n",
            "enum": [
              "pullTransferCredit",
              "pushTransferDebit",
              "pushtransferCredit",
              "salesTaxRebateReversal"
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "customProgramData": {
            "type": "object",
            "properties": {
              "originator": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "state": {
                        "maxLength": 2,
                        "minLength": 1,
                        "type": "string",
                        "description": "Should match the state information submitted in the original PullFundsTransactions\n"
                      },
                      "county": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "Should match the county information submitted in the original PullFundsTransactions.\n"
                      },
                      "zipCode": {
                        "maxLength": 9,
                        "minLength": 5,
                        "type": "string",
                        "description": "Should match the zip code information submitted in the original PullFundsTransactions.\n"
                      },
                      "addressLine": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "Should match the country information submitted in the original PullFundsTransactions.\n"
                      }
                    },
                    "description": "Address details.\n"
                  },
                  "originatorId": {
                    "maxLength": 15,
                    "minLength": 1,
                    "type": "string",
                    "description": "A unique identifier for the card acceptor (Visa Direct merchant).\n"
                  },
                  "originatorName": {
                    "maxLength": 25,
                    "minLength": 1,
                    "type": "string",
                    "description": "Card acceptor name as it is sent in the original PullFundsTransactions.\n"
                  },
                  "originatorTerminalId": {
                    "maxLength": 8,
                    "minLength": 1,
                    "type": "string",
                    "description": "The identifier for the terminal at a card acceptor location.\n"
                  }
                }
              },
              "merchantReference": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
              }
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "localTransactionDateTime": {
            "description": "This field contains the local date and time when the Adjustment transaction is submitted. Format: YYYY-MM-DDThh:mm:ss.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "rewardProgramIdentificationCode": {
            "maxLength": 6,
            "minLength": 6,
            "type": "string",
            "description": "Used to identify the reward program.\n"
          }
        }
      },
      "ValidatePayoutWalletOnlyRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-8"
          }
        ]
      },
      "ValidatePayoutWalletOnlyRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-6"
          }
        ]
      },
      "ValidatePayoutWalletOnlyRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-7"
          }
        ]
      },
      "ValidPayoutWithNetworkResponse": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "nameMatch": {
            "$ref": "#/components/schemas/nameMatch"
          },
          "currencyCodes": {
            "type": "array",
            "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.<br /><b>Reserved for future use.</b>\n",
            "example": [
              "USD",
              "GBP",
              "EUR"
            ],
            "items": {
              "$ref": "#/components/schemas/AlphaCurrencyCode"
            }
          },
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "bankAccountName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account name i.e. account holder name as returned by the partner when nameMatch = ‘PARTIAL_MATCH’. Available for some corridors. Applicable only for Accounts."
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed.\n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          },
          "bankAccountNameTranslation": {
            "type": "string",
            "description": "Account HolderName Translated from the source language to english.<br /><b> Reserved for future use.</b>\n",
            "example": "Wang Li"
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "OCTTransactionDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "purchaseIdentifier<br><br>This is the invoice number or some other reference for billing purposes.</br>e.g. For Airtime top up, this should contain the mobile number (MSISDN) that is being topped up."
              },
              "value": {
                "$ref": "#/components/schemas/PurchaseIdentifier"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "customerReference<br><br><b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
              },
              "value": {
                "maxLength": 17,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "secondaryId<br><br>secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
              },
              "value": {
                "maxLength": 28,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "sourceAmount<br><br><b>Conditional.<b><br><br>Source Amount is required in certain markets to identify the transaction amount entered in the sender's currency code prior to FX conversion by the originating entity."
              },
              "value": {
                "type": "number"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "sourceCurrencyCode<br><br><b>Conditional.<b><br><br>3-digit numeric or 3-character alpha ISO currency code for currency of the sourceAmount field. <br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a> "
              },
              "value": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "vauFlag<br><br>Possible values are : Y (replacement occurred). N (No replacements)"
              },
              "value": {
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "argentinaNationalServiceData<br><br>Settlement Service Data object for Argentina required if transaction indicates Argentina national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/ArgentinaNationalServiceData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "colombiaNationalServiceData<br><br>Settlement Service Data object for Colombia required if transaction indicates Colombia national settlement"
              },
              "value": {
                "$ref": "#/components/schemas/ColombiaNationalServiceData-1"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "mexicoNationalServiceData<br><br>Settlement Service Data object for Mexico required if transaction indicates Mexico national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/MexicoNationalServiceData"
              }
            }
          }
        ]
      },
      "ValidatePayoutWalletOnlyRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest"
          }
        ]
      },
      "SettlementOverdueFlexibleSettlementNotification-5": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_OVERDUE"
            ]
          },
          "nextDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SettlementOverdueDetails-5"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "AFTRServiceProcessingType": {
        "type": "object",
        "properties": {
          "requestType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string"
          }
        }
      },
      "ValidatePayoutWalletOnlyRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-1"
          }
        ]
      },
      "SettlementOverdueFlexibleSettlementNotification-3": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_OVERDUE"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "nextDueDetails": {
            "items": {
              "$ref": "#/components/schemas/SettlementOverdueDetails-3"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SettlementOverdueFlexibleSettlementNotification-4": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_OVERDUE"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "nextDueDetails": {
            "items": {
              "$ref": "#/components/schemas/SettlementOverdueDetails-4"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SettlementOverdueFlexibleSettlementNotification-1": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_OVERDUE"
            ]
          },
          "nextDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SettlementOverdueDetails-1"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "SettlementAmount-1": {
        "type": "number",
        "description": "Specifies the settlement amount for the transaction in the settlement currency. Format number<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a positive numeric value.</li>\n  <li>Cannot include alphabetic characters or special symbols other than the decimal point.</li>\n</ul>",
        "format": "double",
        "example": 250
      },
      "ValidatePayoutWalletOnlyRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-4"
          }
        ]
      },
      "SettlementOverdueFlexibleSettlementNotification-2": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_OVERDUE"
            ]
          },
          "nextDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SettlementOverdueDetails-2"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "ValidatePayoutWalletOnlyRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-5"
          }
        ]
      },
      "Wallet-6": {
        "required": [
          "accountIdentifier",
          "accountIdentifierType",
          "countryCode",
          "currencyCode",
          "operatorName"
        ],
        "type": "object",
        "properties": {
          "countryCode": {
            "$ref": "#/components/schemas/AlphaCountryCode"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "operatorName": {
            "type": "string",
            "description": "This identifies the operator that has issued the account to the recipient and is going to receive and post the funds to the recipient’s wallet.\n(Refer to Visa Direct Endpoint Guide on list of supported Wallet Operators).\n"
          },
          "accountIdentifier": {
            "maxLength": 210,
            "minLength": 1,
            "type": "string",
            "description": "The wallet recipient's actual account identifier associated with the wallet operator (e.g., wallet address - phone/email/username that identifies the account associated with the wallet operator)\n"
          },
          "accountIdentifierType": {
            "type": "string",
            "description": "The type of account identifier used by the recipient. \n\nSupported values are PHONENUMBER, EMAIL and USERNAME.\n",
            "example": "PHONENUMBER",
            "enum": [
              "PHONENUMBER",
              "EMAIL",
              "USERNAME"
            ]
          }
        },
        "description": "Recipient's wallet object\n\nConditional object when payoutMethod has value 'W'\n"
      },
      "ValidatePayoutWalletOnlyRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-2"
          }
        ]
      },
      "Wallet-5": {
        "required": [
          "accountIdentifier",
          "accountIdentifierType",
          "countryCode",
          "currencyCode",
          "operatorName"
        ],
        "properties": {
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "operatorName": {
            "description": "This identifies the operator that has issued the account to the recipient and is going to receive and post the funds to the recipient’s wallet.\n(Refer to Visa Direct Endpoint Guide on list of supported Wallet Operators).\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "accountIdentifier": {
            "maxLength": 210,
            "minLength": 1,
            "description": "The wallet recipient's actual account identifier associated with the wallet operator (e.g., wallet address - phone/email/username that identifies the account associated with the wallet operator)\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "accountIdentifierType": {
            "description": "The type of account identifier used by the recipient. \n\nSupported values are PHONENUMBER, EMAIL and USERNAME.\n",
            "example": "PHONENUMBER",
            "enum": [
              "PHONENUMBER",
              "EMAIL",
              "USERNAME"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          }
        },
        "description": "Recipient's wallet object\n\nConditional object when payoutMethod has value 'W'\n",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutWalletOnlyRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-3"
          }
        ]
      },
      "Wallet-4": {
        "required": [
          "accountIdentifier",
          "accountIdentifierType",
          "countryCode",
          "currencyCode",
          "operatorName"
        ],
        "properties": {
          "countryCode": {
            "$ref": "#/components/schemas/AlphaCountryCode-3"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "operatorName": {
            "description": "This identifies the operator that has issued the account to the recipient and is going to receive and post the funds to the recipient’s wallet.\n(Refer to Visa Direct Endpoint Guide on list of supported Wallet Operators).\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "accountIdentifier": {
            "maxLength": 210,
            "minLength": 1,
            "description": "The wallet recipient's actual account identifier associated with the wallet operator (e.g., wallet address - phone/email/username that identifies the account associated with the wallet operator)\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "accountIdentifierType": {
            "description": "The type of account identifier used by the recipient. \n\nSupported values are PHONENUMBER, EMAIL and USERNAME.\n",
            "example": "PHONENUMBER",
            "enum": [
              "PHONENUMBER",
              "EMAIL",
              "USERNAME"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          }
        },
        "description": "Recipient's wallet object\n\nConditional object when payoutMethod has value 'W'\n",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountHolderIdentificationList": {
        "type": "array",
        "description": "Identification list of the account holder",
        "items": {
          "required": [
            "idNumber",
            "idType"
          ],
          "type": "object",
          "properties": {
            "idType": {
              "type": "string",
              "description": "Id Type of the accountholder\n",
              "enum": [
                "NATIONALIDENTITY",
                "PASSPORT",
                "DRIVERLICENSE",
                "TAX"
              ]
            },
            "idNumber": {
              "type": "string",
              "description": "Id Value of the accountholder\n"
            }
          }
        }
      },
      "MagneticStripeData-2": {
        "type": "object",
        "properties": {
          "track1Data": {
            "maxLength": 76,
            "minLength": 1,
            "type": "string",
            "description": "Track 1 data"
          },
          "track2Data": {
            "maxLength": 40,
            "minLength": 1,
            "type": "string",
            "description": "Track 2 data"
          }
        },
        "description": "Magnetic stripe data"
      },
      "MagneticStripeData-3": {
        "type": "object",
        "properties": {
          "track1Data": {
            "maxLength": 76,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br>\nContains the Track 1 data read from the card's magnetic stripe during a transaction. This data includes cardholder name and other discretionary information encoded on Track 1. For a card-present scenario, magneticStripeData.track1Data (or magneticStripeData.track2Data) must be included. These fields are only available in OCT transactions in specific geographies. Please reach out to your Visa representative for details.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain valid Track 1 data as per ISO/IEC 7813 specifications.</li>\n</ul>"
          },
          "track2Data": {
            "maxLength": 38,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br>\nContains the Track 2 data read from the card's magnetic stripe during a transaction. This data includes the card number and expiration date encoded on Track 2 and is used for transaction processing when the magnetic stripe is read instead of the chip. For a CardPresent scenario, magneticStripeData.track1Data (or magneticStripeData.track2Data) must be included. These fields are only available in OCT transactions in specific geographies. Please reach out to your Visa representative for details.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain valid Track 2 data as per ISO/IEC 7813 specifications.</li>\n</ul>",
            "example": "4111111111111111=23051200000000000000"
          }
        },
        "description": "Magnetic stripe data"
      },
      "CavvResultCode": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "CAVV result code"
      },
      "SenderLocalNameData": {
        "required": [
          "encodingFormat",
          "languageCode"
        ],
        "type": "object",
        "properties": {
          "lastName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Sender's last name in local language."
          },
          "aliasName": {
            "maxLength": 70,
            "minLength": 1,
            "type": "string",
            "description": "Sender's alias name in local language."
          },
          "firstName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Sender's first name in local language."
          },
          "middleName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Sender's middle name in local language."
          },
          "languageCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "3 characters ISO 639 language code. Example 'heb' for Hebrew."
          },
          "encodingFormat": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "01 = UTF-8"
          }
        }
      },
      "AFTRCardResponseTokenData-1": {
        "type": "object",
        "properties": {
          "last4ofPAN": {
            "$ref": "#/components/schemas/Last4ofPAN-1"
          },
          "tokenAssuranceMethod": {
            "$ref": "#/components/schemas/TokenAssuranceMethod-1"
          },
          "additionalTokenRespInfo": {
            "$ref": "#/components/schemas/AdditionalTokenRespInfo"
          }
        }
      },
      "ValidatePayoutAccountRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest"
          }
        ]
      },
      "FundingDetailsFundsNotReceived-1": {
        "required": [
          "currencyCode",
          "pullFundId",
          "pullFundsDetails",
          "totalAmountDue"
        ],
        "type": "object",
        "properties": {
          "pullFundId": {
            "type": "string",
            "description": "The pull fund id generated by Visa."
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "description": "Total amount due by due date. Pulled in this request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TotalAmountDue"
              }
            ]
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetailsFundsNotRceived-1"
          }
        }
      },
      "AccountPayoutRequest-18": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-15"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-17"
          }
        ]
      },
      "QueryReturnReasonDetails": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReturnReasonCode-1"
              }
            ]
          },
          "description": {
            "$ref": "#/components/schemas/ReturnReasonCodeDescription-1"
          }
        }
      },
      "AccountPayoutRequest-19": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-15"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-18"
          }
        ]
      },
      "OriginalActionCode-1": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "The action code of the original transaction request Format Length constraint: [2 .. 2] characters Values follow VisaNet-defined action codes (e.g., 00 for approved, 05 for decline). Refer to actionCode<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid VisaNet action code from the original transaction.</li>\n  <li>Cannot contain spaces or special characters.</li>\n  <li>Field is conditional and only present when referencing a prior transaction.</li>\n</ul>\n<b>Note:</b> This field is only present, when the request is identified as a duplicate.",
        "example": "00   // Original transaction approved"
      },
      "AccountPayoutRequest-16": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-13"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-15"
          }
        ]
      },
      "MagneticStripeData-1": {
        "type": "object",
        "properties": {
          "track1Data": {
            "maxLength": 76,
            "minLength": 1,
            "type": "string",
            "description": "Track 1 data"
          },
          "track2Data": {
            "maxLength": 38,
            "minLength": 1,
            "type": "string",
            "description": "Track 2 data"
          }
        },
        "description": "Magnetic stripe data"
      },
      "AccountPayoutRequest-17": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-5"
          }
        ]
      },
      "AccountPayoutRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-14"
          }
        ]
      },
      "AccountWalletIdType-1": {
        "type": "string",
        "description": "Identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.\n\n  Valid values :\n  \n  P- Passport\n  D-Driving License\n  N-National Id\n  T-Tax Id\n  L-Legal Entity Registration Number\n  F-Foreign Id\n  \n  ISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
        "enum": [
          "P",
          "D",
          "N",
          "T",
          "L",
          "F"
        ]
      },
      "AccountPayoutRequest-15": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-4"
          }
        ]
      },
      "AccountPayoutRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-12"
          }
        ]
      },
      "AccountPayoutRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-13"
          }
        ]
      },
      "AccountPayoutRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-11"
          }
        ]
      },
      "AFTTransactionDetail-9": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees-3"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData-4"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTTransactionDetailAdditionalData"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-4"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-3"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount-1"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-4"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator-1"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds-1"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "description": "<ul><li>Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the sender.</li><li>For Cross-border, originator can use this field for its chosen currency or the sender's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*.</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode. <br><b>*Note:</b> This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime-1"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator-1"
          },
          "originalTransactionIdentifier": {
            "description": "<b>Conditional</b><br><br>Merchants must link the Merchant-Initiated Transaction with the original transaction using the Transaction Identifier that was generated for the original cardholder-initiated transaction. For standing-instruction MITs (recurring, installment, and unscheduled COF), acquirers can use the Transaction Identifier generated for the previous transaction in the series to link subsequent transactions.<br><br><b>Validation Rules:</b><br><ul><li>Must contain the Transaction Identifier of the original transaction or previous transaction in the series for MIT use cases.</li><li>This field is required to identify whether a transaction is merchant-initiated.</li></ul>",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemsTraceAuditNumber-1"
              }
            ]
          }
        }
      },
      "Field": {
        "required": [
          "$ref",
          "name",
          "presence"
        ],
        "type": "object",
        "properties": {
          "$ref": {
            "type": "string",
            "description": "this refers to a JSON Schema definition within the document"
          },
          "name": {
            "type": "string",
            "description": "If 'name' contains absolute JSON path (with '$' at the beginning), it defines the JSON path of the field; otherwise, concatenate \\<path\\>+ \".\" +\\<name\\> to form an absolute JSON path."
          },
          "path": {
            "type": "string",
            "description": "If provided the \\<path\\> + \".\" + \\<name\\> will form a JSONPath string. The path provided at the field level takes precedence over the path provided at the rule level."
          },
          "presence": {
            "type": "string",
            "enum": [
              "required",
              "recommended",
              "conditional",
              "optional"
            ]
          },
          "condition": {
            "type": "string",
            "description": "This refers to a 'id' value of a condition within the document"
          }
        }
      },
      "UpdatePayoutResponse": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CancelCardPayoutResponse"
          }
        ]
      },
      "AFTTransactionDetail-5": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees-2"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData-2"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-3"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "AFTTransactionDetail-6": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees-1"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "AFTTransactionDetail-7": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees-2"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData-2"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-3"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "PrimaryAccountNumber": {
        "maxLength": 19,
        "minLength": 13,
        "type": "string",
        "description": "Primary account number of the recipient's card",
        "example": "4123456789012345"
      },
      "AFTTransactionDetail-1": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees-1"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "description": "<ul><li>Use a 3-character alpha currency code for currency of the sender.</li><li>For Cross-border, originator can use this field for its chosen currency or the sender's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*.</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode. <br><b>*Note:</b> This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "AFTTransactionDetail-2": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees-1"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-2"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "description": "<ul><li>Use a 3-character alpha currency code for currency of the sender.</li><li>For Cross-border, originator can use this field for its chosen currency or the sender's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*.</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode. <br><b>*Note:</b> This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "AFTTransactionDetail-3": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees-2"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData-2"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-3"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "description": "<ul><li>Use a 3-character alpha currency code for currency of the sender.</li><li>For Cross-border, originator can use this field for its chosen currency or the sender's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*.</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode. <br><b>*Note:</b> This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "FundingDetailsFundsNotReceived-2": {
        "required": [
          "currencyCode",
          "pullFundId",
          "pullFundsDetails",
          "totalAmountDue"
        ],
        "properties": {
          "pullFundId": {
            "description": "The pull fund id generated by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "totalAmountDue": {
            "description": "Total amount due by due date. Pulled in this request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TotalAmountDue-1"
              }
            ],
            "exampleSetFlag": false
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetailsFundsNotRceived-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AFTTransactionDetail-4": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees-1"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "FundingDetailsFundsNotReceived-3": {
        "required": [
          "currencyCode",
          "pullFundId",
          "pullFundsDetails",
          "totalAmountDue"
        ],
        "type": "object",
        "properties": {
          "pullFundId": {
            "type": "string",
            "description": "The pull fund id generated by Visa."
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "description": "Total amount due by due date. Pulled in this request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TotalAmountDue"
              }
            ]
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetailsFundsNotRceived-3"
          }
        }
      },
      "ValidatePayoutResponse-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-1"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-1"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "BalanceNotification": {
        "required": [
          "accountId",
          "balance",
          "eventType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "balance": {
            "type": "array",
            "description": "array of balances for all currencies of the 'accountId'",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountBalance"
                },
                {
                  "type": "object",
                  "properties": {
                    "operator": {
                      "type": "string",
                      "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType",
                      "enum": [
                        "LESS_THAN"
                      ]
                    },
                    "threshold": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/AmountWithZero"
                        }
                      ]
                    },
                    "balanceTimestamp": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/TimestampType"
                        }
                      ]
                    }
                  }
                }
              ]
            }
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "eventType": {
            "type": "string",
            "description": "Indicates why the balance notification is triggered\n\nPossible values:\n* `THRESHOLD` - When balance threshold is exceeded\n* `LIQUIDITY_FAILURE` - when balance is negative\n* `PERIODIC` - Regular balance snapshot at certain day/time\n",
            "enum": [
              "THRESHOLD",
              "LIQUIDITY_FAILURE",
              "PERIODIC"
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          }
        }
      },
      "PaymentFacilitatorState": {
        "maxLength": 3,
        "minLength": 1,
        "type": "string",
        "description": "State of the payment facilitator",
        "example": "CA"
      },
      "ValidatePayoutResponse-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-4"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-2"
          }
        ]
      },
      "ValidatePayoutResponse-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-6"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-2"
          }
        ]
      },
      "ValidatePayoutResponse-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-3"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-4"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-4"
          }
        ]
      },
      "NationalServiceData-1": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ArgentinaNationalServiceData-1"
          },
          {
            "$ref": "#/components/schemas/ColombiaNationalServiceData"
          },
          {
            "$ref": "#/components/schemas/MexicoNationalServiceData-1"
          }
        ]
      },
      "AccountPayoutRequest-29": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/AccountTransactionDetail-5"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-27"
          }
        ],
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutResponse-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-7"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-2"
          }
        ]
      },
      "WalletPayoutOnlyRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest"
          }
        ]
      },
      "ValidatePayoutResponse-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-6"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-2"
          }
        ]
      },
      "AccountPayoutRequest-27": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-26"
          }
        ]
      },
      "ValidatePayoutResponse-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-4"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-2"
          }
        ]
      },
      "WalletPayoutOnlyRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-1"
          }
        ]
      },
      "RecipientAccountNumberType": {
        "maxLength": 2,
        "minLength": 1,
        "type": "string",
        "description": "Account number type of the recipient"
      },
      "AccountPayoutRequest-28": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest"
          }
        ]
      },
      "ExpectedPostingDateForValidate-1": {
        "maxLength": 10,
        "minLength": 10,
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds.\n\nThe EPD is a variable field that may alter between the responses of validate payout API and send payout API.\n\nISO20022 field name: Interbank Settlement Date\n",
        "format": "date",
        "example": "1980-02-01"
      },
      "WalletPayoutOnlyRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-2"
          }
        ]
      },
      "AccountPayoutRequest-25": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-24"
          }
        ]
      },
      "WalletPayoutOnlyRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-3"
          }
        ]
      },
      "AccountPayoutRequest-26": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-25"
          }
        ]
      },
      "WalletPayoutOnlyRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-4"
          }
        ]
      },
      "AccountPayoutRequest-23": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-22"
          }
        ]
      },
      "ExpectedPostingDateForValidate-3": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds.\n\nThe EPD is a variable field that may alter between the responses of validate payout API and send payout API.\n\nISO20022 field name: Interbank Settlement Date\n",
        "format": "date"
      },
      "NationalServiceData-8": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ArgentinaNationalServiceData"
          },
          {
            "$ref": "#/components/schemas/ColombiaNationalServiceData-1"
          },
          {
            "$ref": "#/components/schemas/MexicoNationalServiceData"
          }
        ]
      },
      "WalletPayoutOnlyRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-5"
          }
        ]
      },
      "AccountPayoutRequest-24": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-23"
          }
        ]
      },
      "ExpectedPostingDateForValidate-2": {
        "maxLength": 10,
        "minLength": 10,
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds.\n\nThe EPD is a variable field that may alter between the responses of validate payout API and send payout API.\n\nISO20022 field name: Interbank Settlement Date\n",
        "format": "date",
        "example": "1980-02-01",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "WalletPayoutOnlyRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-6"
          }
        ]
      },
      "AccountPayoutRequest-22": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-21"
          }
        ]
      },
      "WalletPayoutOnlyRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-7"
          }
        ]
      },
      "WalletPayoutOnlyRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-8"
          }
        ]
      },
      "ScheduledPushFundsTransaction": {
        "required": [
          "dateTime",
          "requestType"
        ],
        "type": "object",
        "properties": {
          "dateTime": {
            "type": "string",
            "description": "Date and time when the transaction will be processed by Visa. Format - CCYYMMDDHHMM",
            "format": "date-time"
          },
          "requestType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Request type for the scheduled transaction"
          }
        }
      },
      "AccountPayoutRequest-20": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-6"
          }
        ]
      },
      "AccountPayoutResponse": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse"
          }
        ]
      },
      "ScaEnvironmentOutageIndicator-1": {
        "type": "string",
        "description": "Acceptance Environment Authentication Outage Indicator. If this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>FALSE – No authentication outage</li>\n  <li>TRUE – Authentication outage</li>\n</ul>",
        "enum": [
          "true",
          "false"
        ]
      },
      "FullNameInUnspecifiedIdentityType-1": {
        "maxLength": 70,
        "minLength": 3,
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "AuthenticationData": {
        "type": "object",
        "properties": {
          "cavv": {
            "maxLength": 40,
            "minLength": 40,
            "type": "string",
            "description": "Cardholder authentication verification value"
          },
          "cvv2": {
            "maxLength": 4,
            "minLength": 1,
            "type": "string",
            "description": "Card verification value"
          },
          "tavv": {
            "maxLength": 40,
            "minLength": 40,
            "type": "string",
            "description": "Transaction authentication verification value"
          }
        }
      },
      "ValidateAccountTransactionDetail-10": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "OCTCardAcceptor": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/OCTCardAcceptorAddress"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/OCTPaymentFacilitator"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/OCTServiceLocationDetails"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Original Credit Transaction"
      },
      "ValidateAccountTransactionDetail-11": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-1"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ValidateAccountTransactionDetail-12": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "SenderCityOfBirth": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Sender city of birth",
        "example": "San Francisco"
      },
      "ValidateAccountTransactionDetail-13": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ExemptionReasonCode": {
        "type": "array",
        "items": {
          "maxLength": 4,
          "minLength": 4,
          "type": "string",
          "description": "Exemption reason code"
        }
      },
      "AcquirerCountryCode-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Three‑letter ISO 3166‑1 alpha‑3 country code identifying the acquirer's registered country for this Visa Direct program. This value must match the country information provided during program enrollment and is typically constant for all transactions under the same program. Must be exactly three uppercase alphabetic characters (A–Z).<br><br>\n<b>Note:</b> While ISO 8583 Field 19 traditionally uses numeric country codes, this API uses the ISO 3166‑1 alpha‑3 format.",
        "example": "USA"
      },
      "ValidateAccountTransactionDetail-14": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-1"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ValidateAccountTransactionDetail-15": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-3"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "RecipientContactName": {
        "maxLength": 140,
        "minLength": 3,
        "type": "string",
        "description": "Contact Name of the Recipient Company (Creditor).\n"
      },
      "ValidateAccountTransactionDetail-16": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "RecipientAuthenticationData": {
        "type": "object",
        "properties": {
          "cvv2": {
            "maxLength": 4,
            "minLength": 1,
            "type": "string",
            "description": "Card verification value"
          }
        }
      },
      "ValidateAccountTransactionDetail-17": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-2"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-4"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "B2BCActionCode": {
        "type": "string",
        "description": "Represents action on the payout",
        "enum": [
          "REVERSAL"
        ]
      },
      "ValidateAccountTransactionDetail-18": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ValidateAccountTransactionDetail-19": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-2"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "paymentRail": {
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-1"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel-1"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-2"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-5"
              }
            ],
            "exampleSetFlag": false
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "statementNarrative": {
            "$ref": "#/components/schemas/StatementNarrative-3"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-2"
              }
            ],
            "exampleSetFlag": false
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetCompanyRecipientIdentificationListWallet-3": {
        "maxItems": 1,
        "minItems": 1,
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "required": [
            "idNumber",
            "idType"
          ],
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values :\n* L-Legal Entity Identification or Registration Number \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet-3"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "DigitalAssetCompanyRecipientIdentificationListWallet-2": {
        "maximum": 1,
        "minimum": 1,
        "description": "Identification list of recipient",
        "items": {
          "required": [
            "idNumber",
            "idType"
          ],
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values :\n* L-Legal Entity Identification or Registration Number \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "enum": [
                "L"
              ],
              "exampleSetFlag": false,
              "types": [
                "string"
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "DigitalAssetCompanyRecipientIdentificationListWallet-1": {
        "maxItems": 1,
        "minItems": 1,
        "description": "Identification list of recipient",
        "items": {
          "required": [
            "idNumber",
            "idType"
          ],
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values :\n* L-Legal Entity Identification or Registration Number \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "AccountQuerySuccessResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "ValidateAccountTransactionDetail-20": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-3"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ValidateAccountTransactionDetail-21": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-2"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-4"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "SenderTransactorDetail-11": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-11"
          },
          {
            "$ref": "#/components/schemas/SenderCompany-2"
          }
        ]
      },
      "ValidateAccountTransactionDetail-22": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-2"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "paymentRail": {
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-2"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel-1"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-2"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-5"
              }
            ],
            "exampleSetFlag": false
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-3"
              }
            ],
            "exampleSetFlag": false
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-3"
              }
            ],
            "exampleSetFlag": false
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SenderTransactorDetail-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual-10"
          },
          {
            "$ref": "#/components/schemas/SenderCompany"
          }
        ]
      },
      "ValidateAccountTransactionDetail-23": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-3"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "$ref": "#/components/schemas/StatementNarrative"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-4"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AmountWithZero": {
        "minimum": 0,
        "type": "number",
        "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType. Threshold value would be zero for LIQUIDITY_FAILURE eventType.\n",
        "format": "double",
        "example": 12.34
      },
      "IdType": {
        "type": "string",
        "description": "When present, this field contains the type of identification document.\n\nValid values:\n* `P` - Passport\n* `D` - Driving License\n* `N` - National Id\n* `T` - Tax Id\n* `L` - Legal Entity Registration Number\n* `F` - Foreign Id\n",
        "example": "P",
        "enum": [
          "P",
          "D",
          "N",
          "T",
          "L",
          "F"
        ]
      },
      "NationalReimbursementFee-1": {
        "type": "number",
        "description": "National reimbursement fee. If present, this field should contain the IRF fees.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must represent a valid numeric amount formatted according to Visa specifications.</li>\n</ul>",
        "format": "double",
        "example": 2.5
      },
      "AccountWalletSenderTransactorDetail-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountWalletSenderIndividual-1"
          },
          {
            "$ref": "#/components/schemas/SenderCompany-1"
          }
        ]
      },
      "PayoutAccountRequest": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID"
              }
            ]
          }
        }
      },
      "WalletVerificationDetail": {
        "required": [
          "accountIdentifierMatch"
        ],
        "type": "object",
        "properties": {
          "nameMatch": {
            "type": "string",
            "description": "Indicates if recipient name matches the wallet account name\n- STRONG_MATCH: The recipient name matches the wallet account holder name with high confidence.\n- NO_MATCH: The recipient name does not match the wallet account holder name.    \n- NOT_SUPPORTED: The Wallet Operator does not support name matching functionality.\n",
            "enum": [
              "STRONG_MATCH",
              "NO_MATCH",
              "NOT_SUPPORTED"
            ]
          },
          "accountIdentifierMatch": {
            "type": "string",
            "description": "Indicates if the account identifier matches the recipient's wallet account identifier\n- YES: Valid\n- NO: Not valid\n"
          }
        }
      },
      "AccountName": {
        "maxLength": 70,
        "minLength": 1,
        "type": "string",
        "description": "When present, this field contains recipient’s account name at the bank.",
        "example": "John Doe"
      },
      "ValidatePayoutAccountOnlyRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest"
          }
        ]
      },
      "AdditionalData-1": {
        "required": [
          "name",
          "value"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The identifier or name of the additional data item."
          },
          "value": {
            "description": "The value associated with the name. Can be of varying type.",
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array"
              }
            ]
          }
        },
        "description": "Represents a key-value pair of additional data used in various processing contexts."
      },
      "AccountWalletSenderTransactorDetail": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountWalletSenderIndividual"
          },
          {
            "$ref": "#/components/schemas/SenderCompany-1"
          }
        ]
      },
      "AdditionalData-2": {
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string"
          },
          "value": {
            "maxLength": 1000,
            "minLength": 1,
            "type": "string"
          }
        }
      },
      "AdjustmentResponseData": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "networkResponse",
              "status",
              "transactionDateTime",
              "transactionIdentifier"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the adjustment transaction",
                "example": "PAYMENT_DELIVERED",
                "enum": [
                  "PAYMENT_DELIVERED",
                  "PAYMENT_DECLINED",
                  "IN_PROGRESS"
                ]
              },
              "networkResponse": {
                "required": [
                  "actionCode"
                ],
                "type": "object",
                "properties": {
                  "actionCode": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Action code returned by the network",
                    "example": "00"
                  },
                  "dcapIndicator": {
                    "maxLength": 1,
                    "type": "string",
                    "description": "Contains an indicator that identifies if the merchant has used the eligible authentication or data sharing method and provided the required data elements.<br/>The valid value is <b>1</b> (VDCAP)."
                  },
                  "settlementInfo": {
                    "required": [
                      "settlementResponsibilityFlag"
                    ],
                    "type": "object",
                    "properties": {
                      "givUpdatedFlag": {
                        "type": "string",
                        "description": "Flag indicating if GIV was updated",
                        "example": "N"
                      },
                      "settlementServiceFlag": {
                        "maxLength": 1,
                        "minLength": 1,
                        "type": "string",
                        "description": "Flag for settlement service",
                        "example": "Y"
                      },
                      "givPreviouslyUpdatedFlag": {
                        "type": "string",
                        "description": "Flag indicating if GIV was previously updated",
                        "example": "N"
                      },
                      "settlementResponsibilityFlag": {
                        "type": "string",
                        "description": "Flag indicating settlement responsibility",
                        "example": "Y"
                      }
                    },
                    "description": "Settlement information"
                  },
                  "customerReference": {
                    "type": "string",
                    "description": "Customer reference information",
                    "example": "CUSTOMER123"
                  },
                  "merchantReference": {
                    "maxLength": 35,
                    "type": "string",
                    "description": "Merchant reference information",
                    "example": "MERCHANT-REF-12345"
                  },
                  "originalActionCode": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Original action code from the transaction being adjusted",
                    "example": "00"
                  },
                  "cardResponseTokenData": {
                    "type": "object",
                    "properties": {
                      "additionalTokenRespInfo": {
                        "maxLength": 1,
                        "minLength": 1,
                        "type": "string",
                        "description": "Additional token response information",
                        "example": "A"
                      }
                    },
                    "description": "Token-related response data"
                  },
                  "masterCardMerchantPaymentGatewayId": {
                    "maxLength": 11,
                    "minLength": 1,
                    "type": "string",
                    "description": "MasterCard merchant payment gateway identifier",
                    "example": "MCPG123456"
                  },
                  "senderIdentificationNumberIndividual": {
                    "type": "string",
                    "description": "Individual identification number for the sender",
                    "example": "IND123456"
                  },
                  "recipientIdentificationNumberBusiness": {
                    "type": "string",
                    "description": "Business identification number for the recipient",
                    "example": "BIZ123456"
                  },
                  "cpsAuthorizationCharactersticIndicator": {
                    "maxLength": 1,
                    "minLength": 1,
                    "type": "string",
                    "description": "CPS authorization characteristic indicator",
                    "example": "Y"
                  }
                },
                "description": "Network response details"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier",
                "example": "ADJUST202505"
              },
              "initiatingPartyId": {
                "type": "integer",
                "description": "A unique identifier assigned by the initiating party for the API consumer",
                "format": "int64",
                "example": 987654321
              },
              "transactionDateTime": {
                "type": "string",
                "description": "Date and time when the transaction was processed",
                "format": "date-time",
                "example": "2025-05-20T14:30:45Z"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                },
                "description": "Service processing type information"
              },
              "transactionIdentifier": {
                "type": "integer",
                "description": "Unique identifier assigned by Visa for the transaction",
                "format": "int64",
                "example": 1234567890123456
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Identifier linking related transactions",
                "example": "TRX-LINK-123456"
              }
            },
            "description": "Transaction details for the adjustment response"
          }
        },
        "description": "Response data for card transaction adjustment"
      },
      "ServiceLocationAddress-2": {
        "type": "object",
        "properties": {
          "city": {
            "$ref": "#/components/schemas/ServiceLocationCity-2"
          },
          "state": {
            "$ref": "#/components/schemas/ServiceLocationState"
          },
          "country": {
            "$ref": "#/components/schemas/ServiceLocationCountry"
          },
          "postalCode": {
            "$ref": "#/components/schemas/ServiceLocationPostalCode"
          }
        }
      },
      "ServiceLocationAddress-1": {
        "type": "object",
        "properties": {
          "city": {
            "$ref": "#/components/schemas/ServiceLocationCity-1"
          },
          "state": {
            "$ref": "#/components/schemas/ServiceLocationState"
          },
          "country": {
            "$ref": "#/components/schemas/ServiceLocationCountry"
          },
          "postalCode": {
            "$ref": "#/components/schemas/ServiceLocationPostalCode"
          }
        }
      },
      "AccountandWalletPayoutResponse-10": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-4"
          }
        ]
      },
      "ServiceDetail": {
        "properties": {
          "traceable": {
            "type": "boolean",
            "description": "Indicates if a payout transaction is traceable"
          },
          "recallable": {
            "type": "boolean",
            "description": "Indicates if a payout transaction is recallable"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rail used for the payout transaction",
            "enum": [
              "ACH",
              "RTP",
              "RTGS",
              "SWIFT"
            ]
          },
          "isFinalStatus": {
            "type": "boolean",
            "description": "Only populated at PAYMENT_SENT status, indicates whether that is the final status provided by network partner."
          }
        }
      },
      "AFTResponseData-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTResponseTransactionDetail-4"
          }
        },
        "description": "Account Funding Transaction (AFT) response data structure"
      },
      "AFTResponseData-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTResponseTransactionDetail-3"
          }
        },
        "description": "Account Funding Transaction (AFT) response data structure"
      },
      "AFTResponseData-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTResponseOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTResponseTransactionDetail-6"
          }
        },
        "description": "Account Funding Transaction (AFT) response data structure"
      },
      "DigitalAssetRecipientIsIndividual-9": {
        "required": [
          "address",
          "dateOfBirth",
          "firstName",
          "lastName",
          "type"
        ],
        "properties": {
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-4"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient last name. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br> The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-6"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount-2"
          }
        },
        "exampleSetFlag": false
      },
      "DigitalAssetRecipientIsIndividual-8": {
        "required": [
          "address",
          "dateOfBirth",
          "firstName",
          "lastName",
          "type"
        ],
        "properties": {
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-3"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient last name. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br> The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-6"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount-1"
          }
        },
        "exampleSetFlag": false
      },
      "PurposeOfPayments-3": {
        "title": "PurposeOfPayments",
        "required": [
          "mandatory"
        ],
        "properties": {
          "mandatory": {
            "description": "Whether the purpose of payment is mandatory.",
            "example": true,
            "exampleSetFlag": true,
            "types": [
              "boolean"
            ]
          },
          "purposeOfPaymentCodes": {
            "description": "List of valid purpose of payment codes.",
            "items": {
              "$ref": "#/components/schemas/PurposeOfPaymentCodes-3"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          }
        },
        "description": "This group contains all configuration information for Purpose of Payment options. The 'mandatory' attribute indicates whether provision of Purpose of Payment data is required for the Payout to be accepted.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetRecipientIsIndividual-2": {
        "required": [
          "address",
          "dateOfBirth",
          "firstName",
          "lastName",
          "type"
        ],
        "properties": {
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-2"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient last name. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br> The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "DigitalAssetRecipientIsIndividual-1": {
        "required": [
          "address",
          "dateOfBirth",
          "firstName",
          "lastName",
          "type"
        ],
        "properties": {
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-1"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient last name. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br> The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "PurposeOfPayments-2": {
        "title": "PurposeOfPayments",
        "required": [
          "mandatory"
        ],
        "type": "object",
        "properties": {
          "mandatory": {
            "type": "boolean",
            "description": "Whether the purpose of payment is mandatory.",
            "example": true
          },
          "purposeOfPaymentCodes": {
            "type": "array",
            "description": "List of valid purpose of payment codes.",
            "items": {
              "$ref": "#/components/schemas/PurposeOfPaymentCodes-2"
            }
          }
        },
        "description": "This group contains all configuration information for Purpose of Payment options. The 'mandatory' attribute indicates whether provision of Purpose of Payment data is required for the Payout to be accepted."
      },
      "AFTRCardAcceptor": {
        "required": [
          "id",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Account Funding Transaction Reversal"
      },
      "PurposeOfPayments-1": {
        "title": "PurposeOfPayments",
        "required": [
          "mandatory"
        ],
        "type": "object",
        "properties": {
          "mandatory": {
            "type": "boolean",
            "description": "Whether the purpose of payment is mandatory.",
            "example": true
          },
          "purposeOfPaymentCodes": {
            "type": "array",
            "description": "List of valid purpose of payment codes.",
            "items": {
              "$ref": "#/components/schemas/PurposeOfPaymentCodes-1"
            }
          }
        },
        "description": "This group contains all configuration information for Purpose of Payment options. The 'mandatory' attribute indicates whether provision of Purpose of Payment data is required for the Payout to be accepted."
      },
      "ServiceLocationAddress-3": {
        "type": "object",
        "properties": {
          "city": {
            "$ref": "#/components/schemas/ServiceLocationCity-3"
          },
          "state": {
            "$ref": "#/components/schemas/ServiceLocationState-1"
          },
          "country": {
            "$ref": "#/components/schemas/ServiceLocationCountry-1"
          },
          "postalCode": {
            "$ref": "#/components/schemas/ServiceLocationPostalCode-1"
          }
        }
      },
      "EligibilityRequestData-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "type": "object",
            "properties": {
              "acquiringBin": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Bank Identification Number of the acquirer",
                "example": "123"
              },
              "acquirerCountryCode": {
                "maximum": 999,
                "minimum": 1,
                "type": "integer",
                "description": "ISO numeric country code for the acquirer",
                "example": 840
              }
            },
            "description": "Originator details for eligibility check"
          },
          "transactionDetail": {
            "required": [
              "card",
              "clientReferenceId"
            ],
            "type": "object",
            "properties": {
              "card": {
                "required": [
                  "accountNumber",
                  "accountNumberType"
                ],
                "type": "object",
                "properties": {
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "The primary account number for which eligibility is being checked",
                    "example": "4111111111111111"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number being submitted",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT"
                    ]
                  }
                },
                "description": "Card information to check eligibility for"
              },
              "criteria": {
                "type": "array",
                "description": "Criteria for eligibility check",
                "items": {
                  "type": "object",
                  "properties": {
                    "accountType": {
                      "type": "string",
                      "description": "Type of the account",
                      "example": "CREDIT",
                      "enum": [
                        "DEBIT",
                        "CREDIT"
                      ]
                    },
                    "routingNetworkId": {
                      "maxLength": 30,
                      "minLength": 1,
                      "type": "string",
                      "description": "Identifier for the routing network",
                      "example": "123"
                    }
                  }
                }
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
              },
              "initiatingPartyId": {
                "type": "integer",
                "description": "A unique identifier assigned by the initiating party for the API consumer",
                "format": "int64",
                "example": 987654321
              }
            },
            "description": "Transaction details for eligibility check"
          }
        },
        "description": "Request data for checking card eligibility"
      },
      "EligibilityRequestData-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "type": "object",
            "properties": {
              "acquiringBin": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Bank Identification Number of the acquirer",
                "example": "123"
              },
              "acquirerCountryCode": {
                "maximum": 999,
                "minimum": 1,
                "type": "integer",
                "description": "ISO numeric country code for the acquirer",
                "example": 840
              }
            },
            "description": "Originator details for eligibility check"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId"
            ],
            "type": "object",
            "properties": {
              "card": {
                "required": [
                  "accountNumber"
                ],
                "type": "object",
                "properties": {
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "The primary account number for which eligibility is being checked",
                    "example": "4111111111111111"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number being submitted",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT"
                    ]
                  }
                },
                "description": "Card information to check eligibility for"
              },
              "criteria": {
                "type": "array",
                "description": "Criteria for eligibility check",
                "items": {
                  "type": "object",
                  "properties": {
                    "accountType": {
                      "type": "string",
                      "description": "Type of the account",
                      "example": "CREDIT",
                      "enum": [
                        "DEBIT",
                        "CREDIT"
                      ]
                    },
                    "routingNetworkId": {
                      "maxLength": 30,
                      "minLength": 1,
                      "type": "string",
                      "description": "Identifier for the routing network",
                      "example": "123"
                    }
                  }
                }
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
              },
              "initiatingPartyId": {
                "type": "integer",
                "description": "A unique identifier assigned by the initiating party for the API consumer",
                "format": "int64",
                "example": 987654321
              },
              "paymentCredentialReference": {
                "required": [
                  "type",
                  "value"
                ],
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "description": "Type of payment instrument.",
                    "example": "PCI_TOKEN_REFID",
                    "enum": [
                      "PCI_TOKEN_REFID"
                    ]
                  },
                  "value": {
                    "maxLength": 75,
                    "minLength": 1,
                    "type": "string",
                    "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>",
                    "example": "TOKEN123456789"
                  },
                  "requestorId": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string",
                    "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
                    "example": "MERCHANT123"
                  }
                },
                "description": "External reference to a payment credential"
              }
            },
            "description": "Transaction details for eligibility check"
          }
        },
        "description": "Request data for checking card eligibility\n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "AFTOriginatorDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardPartnerIdCode<br><br><b>Conditional.</b><br><br>This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.<br><br>This field is conditionally required for all MasterCard transactions."
              },
              "value": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardIndependentSalesOrganizationId<br><br><b>Conditional.</b><br><br>This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.<br><br>This field is conditionally required for all MasterCard transactions."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardSubMerchantId<br><br>Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved and for all MasterCard transactions."
              },
              "value": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardMerchantPaymentGatewayId<br><br>This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "merchantPseudoAbaNumber<br><br>This is a number that uniquely identifies the originator when they sign up to send Push Payment Gateway transactions. On enrollment, an originator will get a single pseudo-value that is assigned by Visa. The other networks will assign their own unique values for the originator.<br><br><b>Note:</b><br>Supported only in US for domestic transactions involving Push Payments Gateway Service."
              },
              "value": {
                "maxLength": 9,
                "minLength": 9,
                "type": "string"
              }
            }
          }
        ]
      },
      "MerchantReference-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Merchant reference number",
        "example": "MR123456789"
      },
      "SenderType": {
        "type": "string",
        "description": "Identifies the type of sender - \"I\" for Individual, \"C\" for Company",
        "example": "I",
        "enum": [
          "I",
          "C"
        ]
      },
      "MerchantReference-3": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nContains the merchant account key value for Argentina domestic purchase (POS) transactions, where businessApplicationId is \"PS\". This field may also be used as a merchant-provided reference value associated with the transaction for tracking, reconciliation, or reporting purposes.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be alphanumeric and within the specified length range.</li>\n  <li>Required for Argentina domestic purchase (POS) transactions when businessApplicationId = \"PS\".</li>\n</ul>",
        "example": "MERCHANTREF12345"
      },
      "MerchantReference-2": {
        "maxLength": 15,
        "minLength": 1,
        "type": "string",
        "description": "Merchant reference number",
        "example": "MR123456789"
      },
      "AdditionalAcceptorId": {
        "type": "object",
        "properties": {
          "idType": {
            "type": "string",
            "description": "Defines type of card Acceptor.<br><br>Duplicate instances of same idType is not allowed <br><br>Marketplace - Marketplace that facilitated the digital currency sale/purchase.<br>Gateways - Payment gateway that facilitated the digital currency sale/purchase.<br>StageDigitalWallet - Staged Digital Wallet that facilitated the digital currency sale/purchase.<br>RampProvider - Ramp provider that facilitated the digital currency sale/purchase.",
            "enum": [
              "Marketplace",
              "Gateways",
              "StagedDigitalWallet",
              "RampProvider"
            ]
          },
          "idValue": {
            "maxLength": 11,
            "minLength": 1,
            "type": "string",
            "description": "Value of idType provided for additional acceptor"
          }
        }
      },
      "AFTResponseData-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTResponseTransactionDetail-2"
          }
        },
        "description": "Account Funding Transaction (AFT) response data structure"
      },
      "AFTServiceProcessingType": {
        "required": [
          "requestType"
        ],
        "type": "object",
        "properties": {
          "requestType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string"
          }
        }
      },
      "AFTResponseData-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTResponseTransactionDetail-1"
          }
        },
        "description": "Account Funding Transaction (AFT) response data structure"
      },
      "OCTCardResponseTokenData-1": {
        "type": "object",
        "properties": {
          "last4ofPAN": {
            "$ref": "#/components/schemas/Last4ofPAN-1"
          },
          "tokenAssuranceMethod": {
            "$ref": "#/components/schemas/TokenAssuranceMethod-1"
          },
          "additionalTokenRespInfo": {
            "$ref": "#/components/schemas/AdditionalTokenRespInfo"
          }
        }
      },
      "CPSAuthorizationCharacteristicIndicator": {
        "type": "string",
        "description": "CPS authorization characteristic indicator",
        "example": "Y",
        "enum": [
          "Y",
          "N"
        ]
      },
      "nameMatch": {
        "type": "string",
        "description": "Score provided based on recipient’s name match, if recipient’s account is found and active. Supports below values: STRONG_MATCH,PARTIAL_MATCH and NO_MATCH. STRONG_MATCH - Recipient’s account found and name is a highly confident match. PARTIAL_MATCH - Recipient’s account found and name is a partial match. NO_MATCH - Recipient’s account found but name is likely not a match. Applicable only for Accounts.\n",
        "enum": [
          "STRONG_MATCH",
          "PARTIAL_MATCH",
          "NO_MATCH"
        ]
      },
      "PurchaseIdentifier": {
        "required": [
          "referenceNumber",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "This field should be populated with value <b>1</b> if sending the Request to Pay ID in the referenceNumber."
          },
          "referenceNumber": {
            "maxLength": 25,
            "type": "string",
            "description": "This is the invoice number or some other reference for billing purposes.</br>e.g. For Airtime top up, this should contain the mobile number (MSISDN) that is being topped up."
          }
        }
      },
      "S2AMetaData": {
        "required": [
          "recipientDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "recipientDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientDetailMetadata"
              }
            ]
          },
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionDetailMetadata"
              }
            ]
          }
        }
      },
      "AccountFundingSource": {
        "type": "string",
        "description": "Source of funds for the transaction",
        "example": "CREDIT",
        "enum": [
          "CREDIT",
          "DEBIT",
          "PREPAID"
        ]
      },
      "AFTNetworkResponse-3": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/AFTResponsePosData-1"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData-1"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-2"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode-3"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-4"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator-1"
          },
          "dcapIndicator": {
            "$ref": "#/components/schemas/DcapIndicator"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo-1"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference-1"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode-1"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode-1"
          },
          "feeProgramIndicator": {
            "description": "Indicates the fee program associated with the transaction. This field identifies which fee structure or program applies to the transaction for settlement and reporting purposes.",
            "allOf": [
              {
                "$ref": "#/components/schemas/FeeProgramIndicator-1"
              }
            ]
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-2"
          },
          "riskAssessmentResults": {
            "$ref": "#/components/schemas/RiskAssessmentResults-3"
          },
          "reimbursementAttribute": {
            "$ref": "#/components/schemas/ReimbursementAttribute-1"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/AFTResponseCardVerificationResults-1"
          },
          "recipientIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual-1"
          }
        }
      },
      "AFTNetworkResponse-1": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/AFTResponsePosData"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-2"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData"
          },
          "riskAssessmentResults": {
            "$ref": "#/components/schemas/RiskAssessmentResults-1"
          },
          "reimbursementAttribute": {
            "$ref": "#/components/schemas/ReimbursementAttribute"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/AFTResponseCardVerificationResults"
          },
          "recipientIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "AFTNetworkResponse-2": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/AFTResponsePosData"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-2"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData"
          },
          "riskAssessmentResults": {
            "$ref": "#/components/schemas/RiskAssessmentResults-1"
          },
          "reimbursementAttribute": {
            "$ref": "#/components/schemas/ReimbursementAttribute"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/AFTResponseCardVerificationResults"
          },
          "recipientIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "VerifyRecipientWalletRequest-3": {
        "required": [
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Wallet\nValid values:\n- \"W\" Visa Direct Wallet\n",
            "enum": [
              "W"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "recipientDetail": {
            "required": [
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName-1"
                  }
                ],
                "exampleSetFlag": true
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "wallet": {
                "$ref": "#/components/schemas/Wallet-5"
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "VerifyRecipientWalletRequest-4": {
        "required": [
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\nValid values:\n- \"W\" Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "recipientDetail": {
            "required": [
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "wallet": {
                "$ref": "#/components/schemas/Wallet-6"
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference"
          }
        }
      },
      "VerifyRecipientWalletRequest-1": {
        "required": [
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n- \"W\" Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "recipientDetail": {
            "required": [
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual. Only 'I' is supported. \n\nISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided.\n\nISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name, conditionally required when name is not provided.\n\nISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-1"
              }
            ]
          }
        }
      },
      "VerifyRecipientWalletRequest-2": {
        "required": [
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Wallet\nValid values:\n- \"W\" Visa Direct Wallet\n",
            "enum": [
              "W"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "recipientDetail": {
            "required": [
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName-1"
                  }
                ],
                "exampleSetFlag": true
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "wallet": {
                "$ref": "#/components/schemas/Wallet-4"
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AFTNetworkResponse-6": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/AFTResponsePosData"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData"
          },
          "riskAssessmentResults": {
            "$ref": "#/components/schemas/RiskAssessmentResults"
          },
          "reimbursementAttribute": {
            "$ref": "#/components/schemas/ReimbursementAttribute"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/AFTResponseCardVerificationResults"
          },
          "recipientIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "VerifyRecipientDetailRequest-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/VerifyRecipientWalletRequest-4"
          },
          {
            "$ref": "#/components/schemas/AccountVerificationRequest-4"
          }
        ]
      },
      "PayoutNotificationReceivedRequest-15": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-3"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "VerifyRecipientDetailRequest-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/VerifyRecipientWalletRequest-3"
          },
          {
            "$ref": "#/components/schemas/AccountVerificationRequest-3"
          },
          {
            "$ref": "#/components/schemas/VerifyRecipientDigitalAssetRequest-1"
          }
        ],
        "exampleSetFlag": false
      },
      "VerifyRecipientDetailRequest-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/VerifyRecipientWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/AccountVerificationRequest-2"
          }
        ],
        "exampleSetFlag": false
      },
      "PayoutNotificationReceivedRequest-16": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "VerifyRecipientDetailRequest-3": {
        "allOf": [
          {
            "$ref": "#/components/schemas/VerifyRecipientWalletRequest-1"
          }
        ]
      },
      "VerifyRecipientDetailRequest-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/VerifyRecipientWalletRequest"
          },
          {
            "$ref": "#/components/schemas/AccountVerificationRequest-1"
          }
        ]
      },
      "PayoutNotificationReceivedRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-3"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "VerifyRecipientDetailRequest-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/VerifyRecipientWalletRequest"
          },
          {
            "$ref": "#/components/schemas/AccountVerificationRequest"
          },
          {
            "$ref": "#/components/schemas/VerifyRecipientDigitalAssetRequest"
          }
        ]
      },
      "PayoutNotificationReceivedRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-2"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-4"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PanEntryMode": {
        "type": "number",
        "description": "A 2-digit code that identifies the method used to enter the cardholder account number and card expiration date."
      },
      "PayoutNotificationReceivedRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutNotificationReceivedRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-4"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutNotificationReceivedRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-2"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "SenderIsIndividual-2": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names <br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualSenderIdentificationListAccount"
          }
        }
      },
      "SenderIsIndividual-1": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names <br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualSenderIdentificationListAccount"
          }
        }
      },
      "SenderIsIndividual-4": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names <br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth-1"
              }
            ],
            "exampleSetFlag": false
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-6"
              }
            ],
            "exampleSetFlag": false
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualSenderIdentificationListAccount-2"
          }
        },
        "exampleSetFlag": false
      },
      "SenderIsIndividual-3": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names <br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth-1"
              }
            ],
            "exampleSetFlag": false
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-6"
              }
            ],
            "exampleSetFlag": false
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualSenderIdentificationListAccount-1"
          }
        },
        "exampleSetFlag": false
      },
      "SenderCompany": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          }
        }
      },
      "OCTOriginatorDetailAdditionalData": {
        "anyOf": [
          {
            "title": "masterCardPartnerIdCode",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardPartnerIdCode<br><br><b>Conditional.</b><br><br>This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.<br><br>This field is conditionally required for all MasterCard transactions."
              },
              "value": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "masterCardIndependentSalesOrganizationId",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardIndependentSalesOrganizationId<br><br><b>Conditional.</b><br><br>This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.<br><br>This field is conditionally required for all MasterCard transactions."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "masterCardSubMerchantId",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardSubMerchantId<br><br>Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved and for all MasterCard transactions."
              },
              "value": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "masterCardMerchantPaymentGatewayId",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardMerchantPaymentGatewayId<br><br>This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "merchantPseudoAbaNumber",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "merchantPseudoAbaNumber<br><br>This is a number that uniquely identifies the originator when they sign up to send Push Payment Gateway transactions. On enrollment, an originator will get a single pseudo-value that is assigned by Visa. The other networks will assign their own unique values for the originator.<br><br><b>Note:</b><br>Supported only in US for domestic transactions involving Push Payments Gateway Service."
              },
              "value": {
                "maxLength": 9,
                "minLength": 9,
                "type": "string"
              }
            }
          }
        ]
      },
      "Cvv2ResultCode-1": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult Format Values defined by Visa CVV2 result codes (e.g., M for match, N for no match). Refer to cvv2ResultsCode<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid CVV2 result code.</li>\n</ul>",
        "example": "M"
      },
      "ExemptionReasonCode-1": {
        "type": "string",
        "enum": [
          "8A01",
          "8A02",
          "8A04",
          "8A06",
          "8A07",
          "8A08",
          "8A76",
          "8473",
          "8474",
          "8976"
        ]
      },
      "AccountVerifyResponse": {
        "required": [
          "clientVerificationReference",
          "verificationId",
          "verificationStatus"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "verificationStatus": {
            "type": "string",
            "description": "Provides the status of verification request.\n* COMPLETED - Request was completed and result is available.\n* NOT_COMPLETED - Service Provider not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "verificationDetails": {
            "required": [
              "code",
              "message"
            ],
            "type": "object",
            "properties": {
              "code": {
                "type": "integer",
                "description": "Response/error code to convey to client what went wrong in case of COMPLETED and account not matched and NOT_COMPLETED as well.",
                "example": 2100
              },
              "message": {
                "type": "string",
                "description": "Message corresponding to the above code.",
                "example": "Account identifier does not match"
              },
              "location": {
                "type": "string",
                "description": "To share the location.",
                "nullable": true,
                "example": "Server A"
              }
            }
          },
          "accountVerificationDetail": {
            "required": [
              "accountIdentifierMatch"
            ],
            "type": "object",
            "properties": {
              "nameMatch": {
                "type": "string",
                "description": "Indicates if recipient bank name is a match.",
                "nullable": true,
                "example": "Strong_Match",
                "enum": [
                  "Strong_Match",
                  "Partial_Match",
                  "No_Match"
                ]
              },
              "currencyCodes": {
                "type": "array",
                "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.<br /><b>Reserved for future use.</b>\n",
                "example": [
                  "USD",
                  "GBP",
                  "EUR"
                ],
                "items": {
                  "$ref": "#/components/schemas/AlphaCurrencyCode"
                }
              },
              "bankAccountName": {
                "type": "string",
                "description": "Field to indicate the actual name of the accountholder (if provided by account verification service provider).\n",
                "nullable": true,
                "example": "John Doe"
              },
              "accountIdentifierMatch": {
                "type": "string",
                "description": "Indicates if the account identifier provided matches the recipient's bank account identifier found.\n- YES: Match\n- NO: No Match\n"
              },
              "bankAccountNameTranslation": {
                "type": "string",
                "description": "Account HolderName Translated from the source language to english.<br /><b> Reserved for future use.</b>\n",
                "example": "Wang Li"
              }
            }
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED"
      },
      "Occupation-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Specifies the recipient's occupation or profession Format Alphabetic characters only (A–Z) May include spaces for multi-word occupations<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must not contain exclusively numeric characters</li>\n  <li>Must not contain special symbols</li>\n  <li>Trim leading and trailing spaces</li>\n  <li>Optional unless mandated by local compliance rules</li>\n</ul>",
        "example": "Engineer"
      },
      "OCTResponseTransactionDetail-1": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "OCTResponseTransactionDetail-2": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "InitiatingPartyId": {
        "type": "integer",
        "description": "Identifier assigned by Visa to uniquely identify the Originating Entity who initiates the transaction\n\nISO20022 field name: Initiating Party Identification<br>\nVisa uses integer instead of string(1-35) for uniformed value generation and presentation.\n",
        "format": "int64",
        "example": 100111
      },
      "OCTResponseTransactionDetail-3": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-2"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "OCTResponseTransactionDetail-4": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "OCTResponseTransactionDetail-5": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-2"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "AFTRequestData": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail"
          }
        }
      },
      "OCTResponseTransactionDetail-6": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "PayoutCardRequest-2": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Card, Account or Wallet\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-2"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-2"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "card"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-2"
              }
            ]
          }
        }
      },
      "OCTResponseTransactionDetail-7": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-2"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "PayoutCardRequest-3": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "OCTResponseTransactionDetail-8": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-3"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "OCTResponseTransactionDetail-9": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-4"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-3"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime-1"
          },
          "serviceProcessingType": {
            "required": [
              "requestType"
            ],
            "type": "object",
            "properties": {
              "requestType": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "<b>Valid Values:</b><br>\n<ul>\n  <li>00: (Not a deferred OCT). This value indicates that the request is not a deferred OCT. Visa will send this value to the recipient issuer in the request. This acts as the default value if not provided in the request.</li>\n  <li>01: (Originator hold). This value indicates that the originating acquirer has held the OCT for a period of time before sending to Visa and is requesting for Visa to treat the transaction as a deferred OCT. Visa will send this value to the recipient issuer in the request.</li>\n  <li>02: (Visa deferred OCT hold, default interval). This value indicates that the originating acquirer is requesting Visa to apply the default holding period of 48 hours upon receipt and process the request as a deferred OCT. Visa will send this value to the recipient issuer in the request.</li>\n  <li>03: (Visa deferred OCT hold, client defined interval). This value indicates that the originating acquirer is requesting Visa to apply the client defined holding period (provided in deferredDateTime field) upon receipt and process the request as a deferred OCT. Visa will send this value to the recipient issuer in the request.</li>\n  <li>0U: (Visa deferred OCT hold, outside UnionPay International operating hours). This value indicates that Visa deferred the transaction because it occurred outside UnionPay International operating hours. The transaction will be processed at the time specified in the deferredDateTime field.</li>\n</ul>\n<b>Note:</b> The value of 01 is reserved for originating acquirers that meet certain conditions. Contact your regional client support representative for more information."
              },
              "deferredDateTime": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "If exist, identifies when the transaction will be processed by Visa. Format of this value will be in CCYYMMDDHHMM.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>CC - Current Century</li>\n  <li>YY - Year</li>\n  <li>MM - Month</li>\n  <li>DD - date</li>\n  <li>HH - Hour</li>\n  <li>MM - Minute</li>\n</ul>"
              }
            }
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier-1"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "PayoutCardRequest-1": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "PayoutCardRequest-8": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "PayoutCardRequest-9": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "PayoutCardRequest-6": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "ErrorResponseWithKey-4": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-4"
              }
            ]
          }
        }
      },
      "PayoutCardRequest-7": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "ErrorResponseWithKey-3": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          }
        }
      },
      "WindowDueDetailsWithPullFunds": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/DueDateTime"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails"
          }
        }
      },
      "PayoutCardRequest-4": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "ErrorResponseWithKey-2": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          }
        }
      },
      "ErrorResponseWithKey-1": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-1"
              }
            ]
          }
        }
      },
      "PayoutCardRequest-5": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "CardEligibilityDetail": {
        "required": [
          "billingCurrencyCode",
          "cardPlatformCode",
          "cardTypeCode",
          "issuerCountryCode",
          "issuerName"
        ],
        "type": "object",
        "properties": {
          "issuerName": {
            "maxLength": 240,
            "minLength": 1,
            "type": "string",
            "description": "Name of the issuing institution",
            "example": "VISA TEST BANK"
          },
          "visaNetwork": {
            "required": [
              "comboCardRange",
              "eligibilities"
            ],
            "type": "object",
            "properties": {
              "eligibilities": {
                "required": [
                  "crossBorder",
                  "domestic"
                ],
                "type": "object",
                "properties": {
                  "accountType": {
                    "type": "string",
                    "description": "Type of the account",
                    "example": "CREDIT",
                    "enum": [
                      "DEBIT",
                      "CREDIT"
                    ]
                  },
                  "crossBorder": {
                    "required": [
                      "payin",
                      "payout"
                    ],
                    "type": "object",
                    "properties": {
                      "payin": {
                        "type": "object",
                        "properties": {
                          "enabled": {
                            "maxLength": 1,
                            "minLength": 1,
                            "type": "string",
                            "description": "Indicates if cross-border payin is enabled",
                            "example": "Y"
                          }
                        }
                      },
                      "payout": {
                        "required": [
                          "gambling",
                          "moneyTransfer",
                          "nonMoneyTransfer"
                        ],
                        "type": "object",
                        "properties": {
                          "gambling": {
                            "type": "string",
                            "description": "Cross-border gambling eligibility",
                            "example": "NOT_ENABLED",
                            "enum": [
                              "STANDARD",
                              "FAST_FUNDS",
                              "NOT_ENABLED"
                            ]
                          },
                          "moneyTransfer": {
                            "type": "string",
                            "description": "Cross-border money transfer eligibility",
                            "example": "STANDARD",
                            "enum": [
                              "STANDARD",
                              "FAST_FUNDS",
                              "NOT_ENABLED"
                            ]
                          },
                          "authApprovalInd": {
                            "type": "string",
                            "description": "Authorization approval indicator for cross-border payouts",
                            "example": "READY",
                            "default": "NO_DATA",
                            "enum": [
                              "NO_DATA",
                              "READY",
                              "OPTIMIZED",
                              "NON-OPTIMIZED"
                            ]
                          },
                          "nonMoneyTransfer": {
                            "type": "string",
                            "description": "Cross-border non-money transfer eligibility",
                            "example": "STANDARD",
                            "enum": [
                              "STANDARD",
                              "FAST_FUNDS",
                              "NOT_ENABLED"
                            ]
                          }
                        }
                      },
                      "domestic": {
                        "required": [
                          "payin",
                          "payout"
                        ],
                        "type": "object",
                        "properties": {
                          "payin": {
                            "type": "object",
                            "properties": {
                              "enabled": {
                                "maxLength": 1,
                                "minLength": 1,
                                "type": "string",
                                "description": "Indicates if domestic payin is enabled",
                                "example": "Y"
                              }
                            }
                          },
                          "payout": {
                            "required": [
                              "gambling",
                              "moneyTransfer",
                              "nonMoneyTransfer"
                            ],
                            "type": "object",
                            "properties": {
                              "gambling": {
                                "type": "string",
                                "description": "Domestic gambling eligibility",
                                "example": "NOT_ENABLED",
                                "enum": [
                                  "STANDARD",
                                  "FAST_FUNDS",
                                  "NOT_ENABLED"
                                ]
                              },
                              "moneyTransfer": {
                                "type": "string",
                                "description": "Domestic money transfer eligibility",
                                "example": "FAST_FUNDS",
                                "enum": [
                                  "STANDARD",
                                  "FAST_FUNDS",
                                  "NOT_ENABLED"
                                ]
                              },
                              "nonMoneyTransfer": {
                                "type": "string",
                                "description": "Domestic non-money transfer eligibility",
                                "example": "STANDARD",
                                "enum": [
                                  "STANDARD",
                                  "FAST_FUNDS",
                                  "NOT_ENABLED"
                                ]
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                },
                "description": "Eligibility information for various transaction types"
              },
              "comboCardRange": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "Indicates if the card is a combo card",
                "example": "Y"
              },
              "cardSubTypeCode": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "Code identifying the card subtype",
                "example": "C"
              },
              "geoRestrictionInd": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "Geographic restrictions indicator",
                "example": "0"
              },
              "prepaidSubTypeCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "Code identifying the prepaid card subtype",
                "example": "PP"
              },
              "accountCurrencyCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "3-character alpha ISO currency code for the card account",
                "example": "USD"
              }
            },
            "description": "Visa network eligibility information"
          },
          "cardTypeCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Code identifying the card type",
            "example": "C"
          },
          "nonVisaNetwork": {
            "type": "array",
            "description": "Non-Visa network eligibility information",
            "items": {
              "required": [
                "eligibilities",
                "networkId"
              ],
              "type": "object",
              "properties": {
                "networkId": {
                  "type": "integer",
                  "description": "Identifier for the routing network",
                  "example": 123
                },
                "eligibilities": {
                  "required": [
                    "crossBorder",
                    "domestic"
                  ],
                  "type": "object",
                  "properties": {
                    "domestic": {
                      "required": [
                        "payin",
                        "payout"
                      ],
                      "type": "object",
                      "properties": {
                        "payin": {
                          "maxLength": 1,
                          "minLength": 1,
                          "type": "string",
                          "description": "Domestic payin indicator",
                          "example": "Y"
                        },
                        "payout": {
                          "type": "string",
                          "description": "Domestic payout eligibility",
                          "example": "STANDARD",
                          "enum": [
                            "STANDARD",
                            "FAST_FUNDS",
                            "NOT_ENABLED"
                          ]
                        }
                      }
                    },
                    "gambling": {
                      "maxLength": 1,
                      "minLength": 1,
                      "type": "string",
                      "description": "Gambling eligibility indicator",
                      "example": "Y"
                    },
                    "crossBorder": {
                      "required": [
                        "payin",
                        "payout"
                      ],
                      "type": "object",
                      "properties": {
                        "payin": {
                          "maxLength": 1,
                          "minLength": 1,
                          "type": "string",
                          "description": "Cross-border payin indicator",
                          "example": "Y"
                        },
                        "payout": {
                          "type": "string",
                          "description": "Cross-border payout eligibility",
                          "example": "STANDARD",
                          "enum": [
                            "STANDARD",
                            "FAST_FUNDS",
                            "NOT_ENABLED"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "cardPlatformCode": {
            "maxLength": 2,
            "minLength": 1,
            "type": "string",
            "description": "Code identifying the card platform",
            "example": "P1"
          },
          "issuerCountryCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "3-character alpha ISO country code for the card issuer",
            "example": "USA"
          },
          "billingCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "3-character alpha ISO currency code for billing",
            "example": "USD"
          },
          "billingCurrencyCodeMinorDigits": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Number of minor digits in the billing currency",
            "example": "2"
          }
        },
        "description": "Details about card eligibility for different transaction types across networks"
      },
      "VerificationCard-2": {
        "required": [
          "accountNumber",
          "accountNumberType"
        ],
        "type": "object",
        "properties": {
          "cvv2": {
            "maxLength": 4,
            "minLength": 3,
            "type": "string",
            "description": "The cvv2Value provided by the account holder",
            "example": "123"
          },
          "tavv": {
            "maxLength": 40,
            "minLength": 1,
            "type": "string",
            "description": "Token authentication verification or token cryptogram value provided by the token provider for the card token in the request",
            "example": "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCD"
          },
          "expiryDate": {
            "maxLength": 7,
            "minLength": 7,
            "type": "string",
            "description": "The expiration date for the primaryAccountNumber in the request",
            "example": "2025-12"
          },
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Required if accountNumberType is PCI_TOKEN",
            "example": "MERCHANT001"
          },
          "accountType": {
            "type": "string",
            "description": "This is used to identify the account type of the primaryAccountNumber in the request. Default is set to 00 if not provided. 00=Not applicable, 10=Saving account, 20=Checking account, 30=Credit card account, 40=Universal account",
            "example": "30",
            "default": "00",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "3-digit numeric or 3-character alpha ISO currency code for the currency of the card",
            "example": "USD"
          },
          "accountNumber": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The primary account number for which account validations are being performed",
            "example": "4111111111111111"
          },
          "accountNumberType": {
            "type": "string",
            "description": "Type of account number",
            "example": "DEFAULT",
            "enum": [
              "DEFAULT",
              "PCI_TOKEN",
              "PAYNAME"
            ]
          }
        },
        "description": "Card details for Verification check"
      },
      "AlphaCurrencyCode": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "3-character ISO-4217 (Alpha-3) currency code\n",
        "example": "USD"
      },
      "Cvv2ResultCode": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "CVV2 result code"
      },
      "AlphaCurrencyCode-2": {
        "maxLength": 3,
        "minLength": 3,
        "description": "3-character ISO-4217 (Alpha-3) currency code\n",
        "example": "USD",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AlphaCurrencyCode-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "ISO-4217 (Alpha-3) currency code\n",
        "example": "USD"
      },
      "ApprovalCode": {
        "maxLength": 6,
        "minLength": 1,
        "type": "string",
        "description": "Approval code from the processing network",
        "example": "12345A"
      },
      "TotalAmountOverdue": {
        "type": "number",
        "description": "Total amount overdue.",
        "format": "double"
      },
      "VerificationCard-1": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "expiryDate"
        ],
        "type": "object",
        "properties": {
          "cvv2": {
            "maxLength": 4,
            "minLength": 3,
            "type": "string",
            "description": "The cvv2Value provided by the account holder",
            "example": "123"
          },
          "tavv": {
            "maxLength": 40,
            "minLength": 1,
            "type": "string",
            "description": "Token authentication verification or token cryptogram value provided by the token provider for the card token in the request",
            "example": "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCD"
          },
          "expiryDate": {
            "maxLength": 7,
            "minLength": 7,
            "type": "string",
            "description": "The expiration date for the primaryAccountNumber in the request",
            "example": "2025-12"
          },
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Required if accountNumberType is PCI_TOKEN",
            "example": "MERCHANT001"
          },
          "accountType": {
            "type": "string",
            "description": "This is used to identify the account type of the primaryAccountNumber in the request. Default is set to 00 if not provided. 00=Not applicable, 10=Saving account, 20=Checking account, 30=Credit card account, 40=Universal account",
            "example": "30",
            "default": "00",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "3-character alpha or numeric currency code for the currency of the card",
            "example": "USD"
          },
          "accountNumber": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The primary account number for which account validations are being performed",
            "example": "4111111111111111"
          },
          "accountNumberType": {
            "type": "string",
            "description": "Type of account number",
            "example": "DEFAULT",
            "enum": [
              "DEFAULT",
              "PCI_TOKEN",
              "PAYNAME"
            ]
          }
        },
        "description": "Card details for Verification check"
      },
      "AccountBalance-2": {
        "required": [
          "amount",
          "currencyCode"
        ],
        "properties": {
          "amount": {
            "description": "The balance amount for a particular currency.\n\nNote: The number of decimal places assumed for this field depends on the currency.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SignedAmount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "currencyCode": {
            "description": "The currency code is a three letter ISO 4217 code. \n\nE.g. GBP for British sterling pounds.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "description": "Represents a monetary value containing a decimal amount value along with a currency code.\n",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountBalance-1": {
        "required": [
          "amount",
          "currencyCode"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "The balance amount for a particular currency.\n\nNote: The number of decimal places assumed for this field depends on the currency.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SignedAmount"
              }
            ]
          },
          "currencyCode": {
            "description": "The currency code is a three letter ISO 4217 code. \n\nE.g. GBP for British sterling pounds.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          }
        },
        "description": "Represents a monetary value containing a decimal amount value along with a currency code. \n"
      },
      "AccountWalletRecipientPayoutAddress": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "CancelCardPayoutResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses-1"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "LimitReachedFlexibleSettlementNotification-1": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "limitReachedDetails",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "LIMIT_REACHED"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "limitReachedDetails": {
            "items": {
              "$ref": "#/components/schemas/LimitReachedDetails-1"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "CancelCardPayoutResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses-2"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "CancelCardPayoutResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses-3"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "CancelCardPayoutResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses-4"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "OCTNetworkResponseSettlementInfo": {
        "required": [
          "settlementResponsibilityFlag"
        ],
        "type": "object",
        "properties": {
          "givUpdatedFlag": {
            "$ref": "#/components/schemas/GivUpdatedFlag"
          },
          "settlementAmount": {
            "$ref": "#/components/schemas/SettlementAmount"
          },
          "settlementServiceFlag": {
            "$ref": "#/components/schemas/SettlementServiceFlag"
          },
          "settlementCurrencyCode": {
            "$ref": "#/components/schemas/SettlementCurrencyCode"
          },
          "givPreviouslyUpdatedFlag": {
            "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag"
          },
          "settlementConversionRate": {
            "$ref": "#/components/schemas/FxConversionRate"
          },
          "settlementResponsibilityFlag": {
            "$ref": "#/components/schemas/SettlementResponsibilityFlag"
          }
        }
      },
      "CancelCardPayoutResponse-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses-5"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "CancelCardPayoutResponse-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses-6"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "ConditionById": {
        "required": [
          "condition"
        ],
        "type": "object",
        "properties": {
          "condition": {
            "type": "string",
            "description": "It refers to 'id' value of a condition"
          }
        }
      },
      "CancelCardPayoutResponse-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses-7"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "CancelCardPayoutResponse-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses-8"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "CancelCardPayoutResponse-9": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "payoutId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CancelCardTransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponses": {
                "type": "array",
                "description": "The array of 'networkResponses' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/EssentialNetworkResponses-9"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Card Pull payout response"
      },
      "OCTSenderDetail": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of sender's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of sender's address"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State code of sender's address"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "Postal code of sender's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of sender's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of sender's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Address of sender"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTSenderDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-1"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "IndividualRecipientIdentificationListAccount-1": {
        "description": "Identification list of recipient",
        "items": {
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* F-Foreign Id            \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeAccount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "IndividualRecipientIdentificationListAccount-3": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* F-Foreign Id            \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "IndividualRecipientIdentificationListAccount-2": {
        "description": "Identification list of recipient",
        "items": {
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* F-Foreign Id            \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeAccount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "EligibilityResponseData": {
        "required": [
          "cardEligibilityDetail"
        ],
        "type": "object",
        "properties": {
          "cardEligibilityDetail": {
            "$ref": "#/components/schemas/CardEligibilityDetail"
          }
        },
        "description": "Response data for checking card eligibility"
      },
      "ResponseSource": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Contains the response source/reason code that identifies the source of the responseCode i.e. whether it is from Visa or from the Issuer\n\nISO20022 field name: N/A\n"
      },
      "StructuredReferenceName": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "SRI Name of the field.",
        "example": "amount, documentType"
      },
      "CardPaymentFacilitator": {
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 11,
            "minLength": 1,
            "type": "string",
            "description": "Marketplace ID or Payment Facilitator's ID. This field is conditionally required when a payment facilitator is involved.\n"
          },
          "name": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Payment facilitator name in OCTs. This field is conditionally required when a payment facilitator is involved.\n"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 50,
                "minLength": 1,
                "type": "string",
                "description": "City Name"
              },
              "state": {
                "maxLength": 3,
                "minLength": 1,
                "type": "string",
                "description": "State/province Code"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Alpha Country Code"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 4,
                "type": "string",
                "description": "Postal code or zip code"
              },
              "streetAddress": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "street Address"
              }
            }
          },
          "subMerchantId": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved.\n"
          },
          "independentSalesOrganizationID": {
            "maxLength": 11,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.    \n"
          }
        }
      },
      "PayoutReceivedAfter202InSendPayout": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "OCTNetworkResponsePosData": {
        "type": "object",
        "properties": {
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          }
        }
      },
      "PayoutNotification-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout-1"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress-2"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout"
          }
        ]
      },
      "PayoutNotification-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout-1"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress-3"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout"
          }
        ]
      },
      "PayoutNotification-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout-1"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress-1"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout"
          }
        ]
      },
      "ReturnReasonCodeDetailsType": {
        "type": "string",
        "description": "Indicates the PSP return type when the payout is returned. Refer to PSP Return Type\n\nISO20022 field name: Payment Return - PSP Return Type\n",
        "enum": [
          "REJECTED",
          "RETURNED"
        ]
      },
      "DigitalAssetAdditionalDetail": {
        "type": "object",
        "properties": {
          "hash": {
            "maximum": 100,
            "minimum": 64,
            "type": "string",
            "description": "A unique identifier for blockchain transaction, generated when blockchain transaction is initiated.\n"
          }
        }
      },
      "PayoutNotification-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutNotificationReceivedRequest-12"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationProcessRequest-12"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationFailedRequest-3"
          }
        ]
      },
      "PayoutNotification-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutNotificationReceivedRequest-14"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationProcessRequest-12"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationFailedRequest-3"
          }
        ]
      },
      "PrepaidBalanceData": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "number",
            "description": "Prepaid balance amount",
            "format": "double"
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "3-character alpha ISO Currency code for the prepaid balance"
          }
        }
      },
      "PayoutNotification-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout-4"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress-4"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout-1"
          }
        ]
      },
      "PayoutNotification-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutNotificationReceivedRequest-3"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationProcessRequest-3"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationFailedRequest-3"
          }
        ]
      },
      "QueryOriginatorDetail-2": {
        "required": [
          "acquiringBin"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-3"
          }
        }
      },
      "QueryOriginatorDetail-1": {
        "required": [
          "acquiringBin"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-2"
          }
        }
      },
      "TransactionLinkIdentifier": {
        "maxLength": 36,
        "minLength": 1,
        "type": "string",
        "description": "Unique identifier for the transaction link. This is used to identify the linked transaction in the system.\n"
      },
      "Surcharge-1": {
        "type": "number",
        "description": "Represents the surcharge assessed by the Originating Entity (sender) for the transaction. Format Currency: Same as the transaction amount<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be in the same currency and format as defined in the transaction amount field.</li>\n</ul>",
        "format": "double",
        "example": 2.5
      },
      "SenderIsIndividual-5": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names <br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualSenderIdentificationListAccount-3"
          }
        }
      },
      "WalletSenderTransactorDetailWithID-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-2"
          },
          {
            "$ref": "#/components/schemas/WalletSenderIsCompany"
          }
        ]
      },
      "WalletAdditionalDetails-3": {
        "type": "object",
        "properties": {
          "shareLink": {
            "maxLength": 512,
            "type": "string",
            "description": "An optional field that includes a URL (shareLinkURL) directing the sender to WeChat, where they can view the transaction status. The link can be shared with the recipient to prompt them to fulfill any requirements for receiving their funds. <br />Currently, this is applicable only for Visa Direct wallet payments to the WeChat wallet operator.\n"
          }
        }
      },
      "WalletSenderTransactorDetailWithID-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-3"
          },
          {
            "$ref": "#/components/schemas/WalletSenderIsCompany-1"
          }
        ],
        "exampleSetFlag": false
      },
      "WalletSenderTransactorDetailWithID-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-1"
          },
          {
            "$ref": "#/components/schemas/WalletSenderIsCompany"
          }
        ]
      },
      "WalletSenderTransactorDetailWithID-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-4"
          },
          {
            "$ref": "#/components/schemas/WalletSenderIsCompany-2"
          }
        ],
        "exampleSetFlag": false
      },
      "AFTRecipientDetail-11": {
        "required": [
          "recipientAccountNumber"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType"
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAddress"
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTRecipientDetailAdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-1"
          },
          "recipientAccountNumber": {
            "$ref": "#/components/schemas/RecipientAccountNumber"
          },
          "recipientReferenceNumber": {
            "$ref": "#/components/schemas/RecipientReferenceNumber"
          }
        }
      },
      "WalletSenderTransactorDetailWithID-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-5"
          },
          {
            "$ref": "#/components/schemas/WalletSenderIsCompany-3"
          }
        ]
      },
      "WalletAdditionalDetails-1": {
        "properties": {
          "shareLink": {
            "maxLength": 512,
            "description": "An optional field that includes a URL (shareLinkURL) directing the sender to WeChat, where they can view the transaction status. The link can be shared with the recipient to prompt them to fulfill any requirements for receiving their funds. <br />Currently, this is applicable only for Visa Direct wallet payments to the WeChat wallet operator.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "202AccountPayoutCreatedResponse": {
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/202TransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "SettlementAmount": {
        "type": "number",
        "description": "Amount to be settled between the parties involved in the transaction",
        "format": "double",
        "example": 123.45
      },
      "WalletAdditionalDetails-2": {
        "properties": {
          "shareLink": {
            "maximum": 512,
            "description": "An optional field that includes a URL (shareLinkURL) directing the sender to WeChat, where they can view the transaction status. The link can be shared with the recipient to prompt them to fulfill any requirements for receiving their funds. <br />Currently, this is applicable only for Visa Direct wallet payments to the WeChat wallet operator.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "FirstName": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Required when recipient is an individual.",
        "example": "Joe"
      },
      "StatementNarrative-1": {
        "maxLength": 140,
        "minLength": 1,
        "type": "string",
        "description": "Originating Entity is advised to provide a narrative that helps the recipient clearly identify the sender and reason for the payment. Text will be displayed on the recipient’s statement when the payment gets posted to the recipient’s account or wallet statement. \nNot all wallet operators support a statement narrative.\n\nConditional - (Refer to Payouts Endpoint Guide on country-specific required fields and lengths).\n\nISO20022 field name: Remittance Information Unstructured       \n",
        "example": "testing narrative"
      },
      "StatementNarrative-2": {
        "maxLength": 140,
        "minLength": 1,
        "type": "string",
        "description": "Originating Entity is advised to provide a narrative that helps the recipient clearly identify the sender and reason for the payment. Text will be displayed on the recipient’s statement when the payment gets posted to the recipient’s account or wallet statement. \nNot all wallet operators support a statement narrative.\n\nConditional - (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths).\n\nISO20022 field name: Remittance Information Unstructured       \n",
        "example": "testing narrative"
      },
      "UrlAddress-1": {
        "maxLength": 256,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field contains the web address of the acceptor. This field is required for all MasterCard transactions.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Standard URL format (letters, numbers, dots, slashes, etc.).</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid URL.</li>\n  <li>Should correspond to the registered domain of the card acceptor.</li>\n  <li>This field is required for all MasterCard transactions.</li>\n</ul>",
        "example": "https://www.paymentfacilitator.com"
      },
      "StatementNarrative-3": {
        "maxLength": 140,
        "minLength": 1,
        "description": "Originating Entity is advised to provide a narrative that helps the recipient clearly identify the sender and reason for the payment. Text will be displayed on the recipient’s statement when the payment gets posted to the recipient’s account or wallet statement. \nNot all wallet operators support a statement narrative.\n\nConditional - (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths).\n\nISO20022 field name: Remittance Information Unstructured\n",
        "example": "testing narrative",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AccountTransactionDetail-15": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-2"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-4"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AccountTransactionDetail-12": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AccountTransactionDetail-13": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-3"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "DigitalAssetValidPayoutResponse": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          }
        }
      },
      "VerificationOriginatorDetail": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "maxLength": 11,
            "minLength": 6,
            "type": "string",
            "description": "This field must contain an acquiring BIN",
            "example": "412345"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/VerificationCardAcceptor"
          },
          "acquirerCountryCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "The clients must provide a 3-digit numeric or 3-character alpha ISO country code",
            "example": "840 USA"
          }
        },
        "description": "Originator details for Verification check"
      },
      "VerifyRecipientWalletOnlyRequest": {
        "required": [
          "initiatingPartyId",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\nValid values:\n- \"W\" Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "recipientDetail": {
            "required": [
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "BuildingNumber": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "This field contains building number of address.",
        "example": "Building 4"
      },
      "MinimumAccountRange-1": {
        "type": "integer",
        "description": "Visa forwards the cardholder PAN data to the acquirer in the original response message. Acquirers must not forward the first nine digits of the cardholder PAN or the full PAN to their merchants.",
        "example": 400000
      },
      "SystemTraceAuditNumber": {
        "maxLength": 6,
        "minLength": 6,
        "type": "string",
        "description": "This field contains a number assigned by the Originating Entity that uniquely identifies a transaction and all message types. The trace number is one of the key data elements used to match a response to its request or to match a message to others for a given transaction set\n\nISO20022 field name: N/A\n",
        "example": "685420"
      },
      "DigitalAssetValidateWalletTransactionDetail-2": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetValidateWalletTransactionDetail-1": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountId": {
        "maxLength": 31,
        "minLength": 12,
        "type": "string",
        "description": "The accountId uniquely identifies the ledger account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
      },
      "DigitalAssetValidateWalletTransactionDetail-3": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          }
        }
      },
      "OCTRecipientDetail-2": {
        "required": [
          "card"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/OCTRecipientCard-2"
          },
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of recipient's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of recipient's address"
              },
              "stateCode": {
                "maxLength": 3,
                "minLength": 1,
                "type": "string",
                "description": "State code of recipient's address"
              },
              "postalCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Postal code of recipient's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of recipient's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of recipient's address"
              },
              "subDivisionMinorCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Sub-division minor code of recipient's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-3"
          }
        },
        "description": "Recipient details for Original Credit Transaction"
      },
      "OCTRecipientCard": {
        "type": "object",
        "properties": {
          "accountType": {
            "type": "string",
            "description": "Used to identify the account type of the recipient's primary account number in the request.  Possible values: 00 (Not applicable), 10 (Saving account), 20 (Checking account),  30 (Credit card account), 40 (Universal account). Default is 00.\n",
            "example": "30",
            "default": "00",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique Merchant Identification assigned by Token Service Provider.  Required if accountNumberType is PCI_TOKEN_REFID.\n",
            "example": "MERCHANT123"
          },
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string",
            "description": "Recipient's primary account number or token account number.  Required if paymentCredentialReference is not provided in the request.\n",
            "example": "4123456789012345"
          },
          "expirationDate": {
            "type": "string",
            "description": "Contains the expiration date for the recipient's primary account number or token.  Visa requires the expiration date to be present in all OCTs destined to U.S. issuers.  Format: YYYY-MM.\n",
            "format": "date"
          },
          "sequenceNumber": {
            "type": "number",
            "description": "Sequence number of the recipient's primary account number.  Required if paymentCredentialReference is not provided in the request.\n"
          },
          "schemeIdentifier": {
            "type": "string",
            "description": "The scheme identifier of the recipient's, 01 - Visa, 02 - Other\n",
            "enum": [
              "01",
              "02"
            ]
          },
          "accountNumberType": {
            "type": "string",
            "description": "Type of recipient account number.\n",
            "example": "DEFAULT",
            "enum": [
              "DEFAULT"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/RecipientAuthenticationData"
          }
        },
        "description": "Card details of the recipient for Original Credit Transactions"
      },
      "OCTRecipientDetail-1": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/OCTRecipientCard-1"
          },
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of recipient's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of recipient's address"
              },
              "stateCode": {
                "maxLength": 3,
                "minLength": 1,
                "type": "string",
                "description": "State code of recipient's address"
              },
              "postalCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Postal code of recipient's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of recipient's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of recipient's address"
              },
              "subDivisionMinorCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Sub-division minor code of recipient's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-2"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/PaymentCredentialReference-2"
          }
        },
        "description": "Recipient details for Original Credit Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "ValidatePayoutAccountRequest-18": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-17"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-17"
          }
        ]
      },
      "QueryTransactionDetail-1": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse-1"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "ValidatePayoutAccountRequest-19": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-17"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-18"
          }
        ]
      },
      "ValidatePayoutAccountRequest-16": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-15"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-15"
          }
        ]
      },
      "ValidatePayoutAccountRequest-17": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-3"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-5"
          }
        ]
      },
      "SenderCompany-1": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n\nISO20022 field name: Debtor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          }
        }
      },
      "QueryTransactionDetail-4": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse-1"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "ValidatePayoutAccountRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-14"
          }
        ]
      },
      "SenderCompany-2": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/Name-1"
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n\nISO20022 field name: Debtor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          }
        }
      },
      "ValidatePayoutAccountRequest-15": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-2"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-4"
          }
        ]
      },
      "QueryTransactionDetail-5": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse-2"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "QueryTransactionDetail-2": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse-1"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "ValidatePayoutAccountRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-11"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-12"
          }
        ]
      },
      "QueryTransactionDetail-3": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse-2"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "ValidatePayoutAccountRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-11"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-13"
          }
        ]
      },
      "ValidatePayoutAccountRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-11"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-11"
          }
        ]
      },
      "QueryTransactionDetail-9": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator-1"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount-1"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate"
          },
          "settlementinfo": {
            "type": "object",
            "properties": {
              "givUpdatedFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              },
              "settlementAmount": {
                "type": "number",
                "description": "Transaction amount converted in settlement currency",
                "format": "bigDecimal"
              },
              "settlementServiceFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are: <br>0 - International Settlement<br>9 - VIP to decide<br>8 - National Settlement<br>"
              },
              "settlementCurrencyCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "integer",
                "description": "Settlement Currency code."
              },
              "givPreviouslyUpdatedFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              },
              "settlementConversionRate": {
                "type": "number",
                "description": "Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency",
                "format": "bigDecimal"
              },
              "settlementResponsibilityFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              }
            },
            "description": "Settlement information for the transaction"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse-4"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-3"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount-1"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime-1"
          },
          "serviceProcessingType": {
            "type": "object",
            "properties": {
              "requestType": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "<b>Valid Values:</b><br>\n<ul>\n  <li>00: (Not a deferred OCT). This value indicates that the request is not a deferred OCT. Visa will send this value to the recipient issuer in the request. This acts as the default value if not provided in the request.</li>\n  <li>01: (Originator hold). This value indicates that the originating acquirer has held the OCT for a period of time before sending to Visa and is requesting for Visa to treat the transaction as a deferred OCT. Visa will send this value to the recipient issuer in the request.</li>\n  <li>02: (Visa deferred OCT hold, default interval). This value indicates that the originating acquirer is requesting Visa to apply the default holding period of 48 hours upon receipt and process the request as a deferred OCT. Visa will send this value to the recipient issuer in the request.</li>\n  <li>03: (Visa deferred OCT hold, client defined interval). This value indicates that the originating acquirer is requesting Visa to apply the client defined holding period (provided in deferredDateTime field) upon receipt and process the request as a deferred OCT. Visa will send this value to the recipient issuer in the request.</li>\n  <li>0U: (Visa deferred OCT hold, outside UnionPay International operating hours). This value indicates that Visa deferred the transaction because it occurred outside UnionPay International operating hours. The transaction will be processed at the time specified in the deferredDateTime field.</li>\n  <li>09: (Cancelled transaction). This value indicates that the previously deferred transaction was cancelled by the originating acquirer.</li>\n</ul>\n<b>Note:</b> The value of 01 is reserved for originating acquirers that meet certain conditions. Contact your regional client support representative for more information."
              }
            }
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier-1"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "QueryTransactionDetail-6": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse-1"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "QueryTransactionDetail-7": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse-2"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "AccountQueryPendingCancelledResponse": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "OCTRecipientDetail-4": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/OCTRecipientCard-3"
          },
          "name": {
            "$ref": "#/components/schemas/RecipientName-1"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType-1"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "<b>Conditional</b><br><br>\nThis field contains the city name of the recipient's address.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain a valid city name.</li>\n  <li>No special characters unless part of official city name.</li>\n  <li>Required for:\n    <ul>\n      <li>Cross-border transactions originating from or destined to Canada.</li>\n      <li>Domestic Colombia transactions.</li>\n      <li>Cross-border transactions over CAD 1000.</li>\n      <li>00 from Canada.</li>\n    </ul>\n  </li>\n</ul>",
                "example": "Austin"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "<b>Conditional</b><br><br>\nSpecifies the recipient's country code based on ISO standards. Requirement: Mandatory for cross-border transactions originating from or destined to Canada. Used for compliance, localization, and routing of funds. Ensures adherence to international standards for country identification. Format Must follow ISO 3166-1 alpha-3 standard Constraint: [3 .. 3] characters<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid ISO 3166-1 alpha-3 country code</li>\n  <li>No spaces, numbers, or special characters</li>\n  <li>Field cannot be empty when conditional requirements apply</li>\n  <li>Required for domestic transactions within Colombia.</li>\n</ul>",
                "example": "USA (United States)"
              },
              "stateCode": {
                "maxLength": 3,
                "minLength": 1,
                "type": "string",
                "description": "Contains the state or province code of the recipient's address. Format Must follow local or ISO subdivision code standards (ISO 3166-2) Uppercase alphabetic characters only<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid state or province code for the recipient's country</li>\n  <li>No spaces, numbers, or special characters</li>\n</ul>",
                "example": "CA (California, US)"
              },
              "postalCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Contains the postal or ZIP code of the recipient's address. Format May include alphanumeric characters Can contain spaces or hyphens as per local postal code standards<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must follow the postal code format of the recipient's country</li>\n  <li>Cannot contain special symbols other than space or hyphen</li>\n</ul>",
                "example": "SW1A 1AA (UK Postal Code)"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "<b>Conditional</b><br><br>\nUnique Merchant Identification assigned by Token Service Provider when applicable. Format Alphanumeric string, length between 1 and 99 characters.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain valid address information.</li>\n</ul>",
                "example": "123 Main Street."
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Specifies the second line of the recipient's address. Format Alphanumeric string, length between 1 and 99 characters.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Optional. Must contain valid address information if provided.</li>\n</ul>",
                "example": "Apt 4B."
              },
              "subDivisionMinorCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Contains the minor subdivision code of the recipient's address, such as district, county, or municipality. Optional. This field contains the ISO subdivision minor code (for e.g. a county within a state) of the recipient address. Format Must follow local or ISO subdivision standards (ISO 3166-2) Uppercase alphabetic characters only<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid minor subdivision code for the recipient's country</li>\n  <li>No spaces, numbers, or special characters</li>\n</ul>\n<b>Note:</b> This field is not applicable for domestic Colombia transactions",
                "example": "DAL (Dallas County, US)"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName-1"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName-1"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName-1"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation-1"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-2"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTRecipientDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth-2"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-5"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/PaymentCredentialReference-4"
          }
        },
        "description": "Recipient details for Original Credit Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "IndividualIdTypeWallet": {
        "type": "string",
        "description": "When present, this field contains the type of identification document.\n\nValid values:\n* `P` - Passport\n* `D` - Driving License\n* `N` - National Id\n* `T` - Tax Id\n* `F` - Foreign Id\n",
        "example": "P",
        "enum": [
          "P",
          "D",
          "N",
          "T",
          "F"
        ]
      },
      "ContactInformationList": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "This field identifies if the contact information is for a business or an individual. The valid value are: 'B' for Business and 'I' for Individual."
          },
          "contactType": {
            "type": "string",
            "description": "This field identifies the type of contact information. The valid value is: \"PHONE\" for phone number.<br /><br />Note:<br />For a given instance of contactInformationList[], a minimum of contactType and contactValue fields should be provided, else the contact information will not be forwarded to the issuer."
          },
          "contactValue": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the contact value for provided contact type.<br /><br />Note:<br />For a given instance of contactInformationList[], a minimum of contactType and contactValue fields should be provided, else the contact information will not be forwarded to the issuer."
          }
        }
      },
      "AdditionalData": {
        "required": [
          "name",
          "value"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The identifier or name of the additional data item."
          },
          "value": {
            "description": "The value associated with the name. Can be of varying type.",
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array"
              }
            ]
          }
        },
        "description": "Represents a key-value pair of additional data used in various processing contexts."
      },
      "ValidatePayoutAccountRequest-29": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/ValidateAccountTransactionDetail-19"
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired-1"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-27"
          }
        ],
        "exampleSetFlag": false
      },
      "ValidatePayoutAccountRequest-27": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-18"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-26"
          }
        ]
      },
      "IdentityListItem-1": {
        "title": "IdentityListItem",
        "required": [
          "label",
          "value"
        ],
        "properties": {
          "label": {
            "description": "The visible label to be presented in the UI list.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "value": {
            "description": "The stored value for the visible list item label.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "description": "This is used to populate a recipient identity field which needs to be displayed as a list in the UI.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutAccountRequest-28": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-1"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest"
          }
        ]
      },
      "AccountRecipientTransactorDetailWithID-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientTypeIsUnspecified"
          }
        ]
      },
      "ValidatePayoutAccountRequest-25": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-14"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-24"
          }
        ]
      },
      "ValidatePayoutAccountRequest-26": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-16"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-25"
          }
        ]
      },
      "ValidatePayoutAccountRequest-23": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-12"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-22"
          }
        ]
      },
      "ValidatePayoutAccountRequest-24": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-13"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-23"
          }
        ]
      },
      "PaymentFacilitatorCountry-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "ISO Country Code of the payment facilitator",
        "example": "USA"
      },
      "AccountRecipientTransactorDetailWithID-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-4"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-4"
          }
        ]
      },
      "AccountRecipientTransactorDetailWithID-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-3"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-3"
          }
        ]
      },
      "PaymentFacilitatorCountry-2": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Country of the payment facilitator using ISO 3166-1 alpha-3 format.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Uppercase alphabetic (A–Z).</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match official registration details.</li>\n</ul>",
        "example": "USA"
      },
      "ValidatePayoutAccountRequest-22": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-10"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-21"
          }
        ]
      },
      "AftSenderPaymentCredentialReference": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID",
              "PAYMENT_CREDENTIAL_ID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". For \"PAYMENT_CREDENTIAL_ID\" length is 1-36 characters. <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "AuthenticationData": {
            "$ref": "#/components/schemas/AuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData"
          }
        },
        "description": "External reference to a payment credential"
      },
      "AccountRecipientTransactorDetailWithID-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-2"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-2"
          }
        ]
      },
      "AccountRecipientTransactorDetailWithID-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-1"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-1"
          }
        ]
      },
      "ValidatePayoutAccountRequest-20": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-6"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-6"
          }
        ]
      },
      "AccountRecipientTransactorDetailWithID-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-8"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-8"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientTypeIsUnspecified-1"
          }
        ],
        "exampleSetFlag": false
      },
      "ValidatePayoutCardRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-1"
          }
        ]
      },
      "AccountRecipientTransactorDetailWithID-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-7"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-7"
          }
        ]
      },
      "AccountRecipientTransactorDetailWithID-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-6"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-6"
          }
        ]
      },
      "AccountRecipientTransactorDetailWithID-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-5"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-5"
          }
        ]
      },
      "ValidatePayoutCardRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-4"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-5"
          }
        ]
      },
      "PayoutToAccountRequest-10": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account  \nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-10"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-4"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-4"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-9"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutCardRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-6"
          }
        ]
      },
      "ValidatePayoutCardRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-3"
          }
        ]
      },
      "CurrencyInfoReason-1": {
        "description": "The reason denotes why a particular currency change has happened.\n1. FLEXIBLE_SETTLEMENT_DISABLED – The flexible settlement is disabled for the client. This applies only when the currentStatus is DISABLED. \n2. CURRENCY_DISABLED - The currency is disabled for the client. This applies only when the currentStatus is DISABLED.\n3. FREEZE_MANUAL – The currency has been manually frozen. This applies only when the currentStatus is DISABLED.\n4. FREEZE_SETTLEMENT_DUE - The currency is automatically frozen following a settlement breach and will stay frozen until the outstanding amount is paid. This applies only when the currentStatus is DISABLED.\n5. FREEZE_ALL_FREEZE_ENABLED - This currency is frozen because another currency is overdue, and the all-freeze setting is enabled. This applies only when the currentStatus is DISABLED.\n6. UNFREEZE_MANUAL - The currency has been manually enabled temporarily. This applies only when the currentStatus is ENABLED.\n7. NO_DUES - The currency is enabled and can be used to send payouts. This applies only when the currentStatus is ENABLED.\n",
        "example": "FLEXIBLE_SETTLEMENT_DISABLED",
        "enum": [
          "FLEXIBLE_SETTLEMENT_DISABLED",
          "CURRENCY_DISABLED",
          "FREEZE_MANUAL",
          "FREEZE_SETTLEMENT_DUE",
          "FREEZE_ALL_FREEZE_ENABLED",
          "UNFREEZE_MANUAL",
          "NO_DUES"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "PayoutToAccountRequest-12": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-13"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-6"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-11"
              }
            ]
          }
        }
      },
      "LastName": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Required when recipient is an individual.",
        "example": "Anderson"
      },
      "ValidatePayoutCardRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-3"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-4"
          }
        ]
      },
      "PayoutToAccountRequest-11": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account  \nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-12"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-5"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-5"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-10"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutCardRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-8"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-9"
          }
        ]
      },
      "ValidatePayoutCardRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-9"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-10"
          }
        ]
      },
      "ValidatePayoutCardRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-6"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-7"
          }
        ]
      },
      "ValidatePayoutCardRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-7"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-8"
          }
        ]
      },
      "WindowDueDetailsWithPullFunds-4": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/DueDateTime"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails-4"
          }
        }
      },
      "OCTNetworkResponse": {
        "required": [
          "actionCode",
          "settlementInfo"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/OCTNetworkResponsePosData"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode"
          },
          "persistentFX": {
            "$ref": "#/components/schemas/PersistentFX"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/OCTNetworkResponseSettlementInfo"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/OCTCardResponseTokenData"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/OCTCardVerificationResults"
          }
        }
      },
      "ExchangeRate": {
        "type": "number",
        "description": "Exchange rate applied to the transaction for currency conversion",
        "format": "double",
        "example": 1
      },
      "AFTTransactionDetail": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTTransactionDetailAdditionalData"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "description": "<ul><li>Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the sender.</li><li>For Cross-border, originator can use this field for its chosen currency or the sender's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*.</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode. <br><b>*Note:</b> This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "RecipientTransactorDetail-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-8"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-5"
          }
        ]
      },
      "DigitalAssetRecipientTransactorDetailWithID": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsIndividual"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsCompany"
          }
        ]
      },
      "WindowDueDetailsWithPullFunds-1": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/DueDateTime"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails-1"
          }
        }
      },
      "RecipientTransactorDetail-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-9"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-9"
          }
        ]
      },
      "RecipientTransactorDetail-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-6"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-6"
          }
        ]
      },
      "WindowDueDetailsWithPullFunds-2": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact-1"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/DueDateTime-1"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue-1"
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RecipientTransactorDetail-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-7"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-4"
          }
        ]
      },
      "WindowDueDetailsWithPullFunds-3": {
        "required": [
          "currencyCode",
          "dueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact-1"
          },
          "dueDateTime": {
            "$ref": "#/components/schemas/DueDateTime-1"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue-1"
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails-3"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SourceOfFunds": {
        "type": "string",
        "description": "Sender source of funds indicator i.e. the funding method used by the sender to fund the payout.Valid values are:\nConditional - source of funds is required by some endpoints, please check for Visa Payment Guide for details  \n\n01 = Visa credit\n02 = Visa debit\n03 = Visa prepaid\n04 = Cash\n05 = Deposit accounts other than those linked to a Visa card (includes checking/savings accounts and proprietary debit/ATMcards)\n06 = Credit accounts other than those linked to a Visa card (includes credit cards and proprietary credit lines)\n\nNote: For any Company to Company (C2C) or Company to Individual (C2I) use-case, this should be “05”, since the funds come from the sender’s bank account.\n\nISO20022 field name: Debtor Account Type\n"
      },
      "PendingCancelledTransactionStatus-1": {
        "type": "string",
        "description": "- PENDING: Payout is accepted but has not been acknowledged\n- CANCELLED - Payout is cancelled when in pending status\n",
        "enum": [
          "PENDING",
          "CANCELLED"
        ]
      },
      "PendingCancelledTransactionStatus-2": {
        "description": "- PENDING: Payout is accepted but has not been acknowledged\n- PENDING_CANCELLATION: Cancel payout status is pending\n- CANCELLED - Payout is cancelled when in pending status\n",
        "enum": [
          "PENDING",
          "PENDING_CANCELLATION",
          "CANCELLED"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "ValidatePayoutAccountRequest-32": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-22"
              }
            ],
            "exampleSetFlag": false
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired-1"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-30"
          }
        ],
        "exampleSetFlag": false
      },
      "CompanyRecipientIdentificationListWallet-3": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id \n* L-Legal Entity Registration Number \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet-3"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "CompanyRecipientIdentificationListWallet-2": {
        "description": "Identification list of recipient",
        "items": {
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id \n* L-Legal Entity Registration Number \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "ValidatePayoutAccountRequest-33": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/ValidateAccountTransactionDetail-23"
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-31"
          }
        ]
      },
      "CompanyRecipientIdentificationListWallet-1": {
        "description": "Identification list of recipient",
        "items": {
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id \n* L-Legal Entity Registration Number \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "ValidatePayoutAccountRequest-30": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-20"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-28"
          }
        ]
      },
      "SendPayoutRequest": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest"
          }
        ]
      },
      "ValidatePayoutAccountRequest-31": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-21"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-29"
          }
        ]
      },
      "ValidateAccountPayoutResponse-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-10"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "AccountBalance": {
        "required": [
          "amount",
          "currencyCode"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "The balance amount for a particular currency.\n\nNote: The number of decimal places assumed for this field depends on the currency.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SignedAmount"
              }
            ]
          },
          "currencyCode": {
            "description": "The currency code is a three letter ISO 4217 code. \n\nE.g. GBP for British sterling pounds.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          }
        },
        "description": "Represents a monetary value containing a decimal amount value along with a currency code.\n"
      },
      "CompanyRecipientIdentificationListAccount": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id \n* L-Legal Entity Registration Number \n* I-Legal Entity Identifier (LEI) Number. \n\nLegal Entity Identifier is a unique identification of legal entities participating in financial transactions and other official interactions maintained in a global directory by the Global Legal Entity Identifier Foundation (GLEIF). This field can only be used for specific routes (Refer to Visa Direct Endpoint Guide on country approval).Format: [A-Z0-9]{18,18}[0-9]{2,2}. ID issue country must NOT be provided when ID type is LEI.            \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "AFTResponseTransactionDetail-6": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "approvedAmount": {
            "description": "This field will be present in a partially approved AFT transaction. It contains the amount approved by the card issuer and is represented in the transaction currency (senderCurrencyCode value in the AFT request).",
            "example": 123.45,
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionAmount-1"
              }
            ]
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTNetworkResponse-3"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-3"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount-1"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier-1"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdenifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          },
          "masterCardElectronicCommerceIndicators": {
            "$ref": "#/components/schemas/MasterCardElectronicCommerceIndicators"
          },
          "cpsAuthorizationCharacteristicIndicator": {
            "$ref": "#/components/schemas/CPSAuthorizationCharacteristicIndicator"
          }
        }
      },
      "SecondaryId": {
        "maxLength": 100,
        "minLength": 1,
        "type": "string",
        "description": "Used for C2B use cases in the CEMEA region where payee initiates the OCT to the payer. Used to obtain an Agreement Id for processing the request."
      },
      "AFTResponseTransactionDetail-4": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/NetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdenifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          },
          "cpsAuthorizationCharacteristicIndicator": {
            "$ref": "#/components/schemas/CPSAuthorizationCharacteristicIndicator"
          }
        }
      },
      "ValidateAccountPayoutResponse-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-7"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "ConditionDefiningFields": {
        "type": "array",
        "description": "This section identifies the fields, objects or arrays that influence the conditions in the conditions[] block. These fields, objects or arrays appear as \"facts\" in the conditions ID definitions.\n",
        "items": {
          "$ref": "#/components/schemas/TransactionRefWithCondition"
        }
      },
      "ValidateAccountPayoutResponse-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-6"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "AcquiringBin-3": {
        "maxLength": 8,
        "minLength": 6,
        "type": "integer",
        "description": "Identifies the Bank Identification Number (BIN) under which the Visa Direct solution is registered. This ensures transactions are routed through the correct acquiring institution.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the BIN provided during Visa Direct program enrollment</li>\n  <li>Remains constant for all transactions under the same program</li>\n</ul>\n<b>Note:</b> Visa uses both 6-digit and 8-digit BINs."
      },
      "AFTResponseTransactionDetail-2": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdenifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          },
          "masterCardElectronicCommerceIndicators": {
            "$ref": "#/components/schemas/MasterCardElectronicCommerceIndicators"
          },
          "cpsAuthorizationCharacteristicIndicator": {
            "$ref": "#/components/schemas/CPSAuthorizationCharacteristicIndicator"
          }
        }
      },
      "ValidateAccountPayoutResponse-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-4"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "AcquiringBin-2": {
        "type": "integer",
        "description": "Identifies the Bank Identification Number (BIN) under which the Visa Direct solution is registered. This ensures transactions are routed through the correct acquiring institution.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the BIN provided during Visa Direct program enrollment</li>\n  <li>Remains constant for all transactions under the same program</li>\n</ul>\n<b>Note:</b> Visa uses both 6-digit and 8-digit BINs."
      },
      "AcquiringBin-1": {
        "maximum": 99999999999,
        "minimum": 100000,
        "maxLength": 11,
        "minLength": 6,
        "type": "integer",
        "description": "Originating bank ID is the Bank Identification Number (BIN) assigned to each Visa Member upon enrollment. If the Originator is not a Financial Institution (FI) and will be processing using a sponsor FI (i.e. Acquirer ) , this is the BIN of the sponsoring FI (Acquirer). It uniquely identifies the Bank/FI that is sponsoring the Originating Entity in Visa’s core system. \n\nNote: This is referred to as the “Acquiring BIN” by Visa\n\nISO20022 field name: Debtor Agent FI Identification\n",
        "example": 408999
      },
      "AFTResponseTransactionDetail-3": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTNetworkResponse-2"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdenifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          },
          "masterCardElectronicCommerceIndicators": {
            "$ref": "#/components/schemas/MasterCardElectronicCommerceIndicators"
          },
          "cpsAuthorizationCharacteristicIndicator": {
            "$ref": "#/components/schemas/CPSAuthorizationCharacteristicIndicator"
          }
        }
      },
      "ValidateAccountPayoutResponse-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-2"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-1"
          }
        ]
      },
      "SettlementOverdueFlexibleSettlementNotification": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_OVERDUE"
            ]
          },
          "nextDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SettlementOverdueDetails"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "ValidateAccountPayoutResponse-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-1"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-1"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "AFTResponseTransactionDetail-1": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-1"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTNetworkResponse-1"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdenifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          },
          "masterCardElectronicCommerceIndicators": {
            "$ref": "#/components/schemas/MasterCardElectronicCommerceIndicators"
          },
          "cpsAuthorizationCharacteristicIndicator": {
            "$ref": "#/components/schemas/CPSAuthorizationCharacteristicIndicator"
          }
        }
      },
      "IdentityListItem": {
        "title": "IdentityListItem",
        "required": [
          "label",
          "value"
        ],
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "description": "The visible label to be presented in the UI list."
          },
          "value": {
            "type": "string",
            "description": "The stored value for the visible list item label."
          }
        },
        "description": "This is used to populate a recipient identity field which needs to be displayed as a list in the UI."
      },
      "AccountHolder": {
        "required": [
          "accountNumber",
          "accountNumberType"
        ],
        "type": "object",
        "properties": {
          "accountNumber": {
            "description": "beneficiary bank account number\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountNumber-1"
              }
            ]
          },
          "accountNumberType": {
            "type": "string",
            "description": "beneficiary bank account number type. Valid values: \"IBAN\" and \"DEFAULT\"\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Financial Institution Account Number Type\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "DEFAULT"
            ]
          }
        },
        "description": "Account Holder Information\n"
      },
      "WalletQueryOnlyErrorResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "CancelPayoutResponse": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CancelAccountandWalletPayoutResponse"
          }
        ]
      },
      "PullCard": {
        "required": [
          "accountNumber"
        ],
        "type": "object",
        "properties": {
          "cavv": {
            "maxLength": 40,
            "minLength": 40,
            "type": "string",
            "description": "The Cardholder Authentication Verification Value (CAVV) is a value generated by an Access Control Server (ACS) and signed by the Issuer using account and password information of cardholders registered for the Verified by Visa (also known as Visa Secure) program. This field should be in hex-encoded format."
          },
          "tavv": {
            "maxLength": 40,
            "minLength": 40,
            "type": "string",
            "description": "The Token Authentication Verification Value (TAVV) is a value generated using tokenized PAN by Visa Token Service (VTS) and signed by the Issuer. This field should be in hex-encoded format."
          },
          "vauFlag": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "If present, a valid value is required. Spaces or special characters are not allowed. Possible values are : Y (will cause VAU to be performed)\n\nISO20022 field name: N/A\n"
          },
          "accountType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.\n\n00-Not applicable\n\n10-Saving account\n\n20-Checking account\n\n30-Credit card account\n\n40-Universal account\n\nDefault is set to \"00\" if not provided.\n",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "pattern": "^\\d*$",
            "type": "string",
            "description": "Recipient primary account number, or token account number\n\nISO20022 field name: N/A\n"
          },
          "cardCvv2Value": {
            "maxLength": 4,
            "minLength": 3,
            "type": "string",
            "description": "The cardCvv2Value value provided by the account holder for the senderPrimaryAccountNumber in the request."
          },
          "expirationDate": {
            "maxLength": 7,
            "minLength": 7,
            "pattern": "YYYY-MM",
            "type": "string",
            "description": "Conditional\nThis field contains the expiration date for the recipient's primary account number or token in recipientPrimaryAccountNumber.\nNote: Visa requires expiration date to be present in all OCTs destined to U.S. issuers\nFormat: YYYY-MM\nExample: 2021-10\n\nISO20022 field name: N/A\n",
            "example": "2022-01"
          }
        },
        "description": "Conditional\nIf 'payoutMethod' is 'C', this object is conditionally required for card pull transaction\n"
      },
      "Last4ofPAN-1": {
        "maxLength": 4,
        "minLength": 4,
        "type": "string",
        "description": "Contains the last four digits of the Primary Account Number (PAN) associated with the card used in the transaction. This is typically returned in the response for tokenized transactions to help identify the underlying card without exposing the full PAN. Format Length constraint: [4 .. 4] characters<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain exactly four numeric digits.</li>\n  <li>Cannot include spaces, letters, or special characters.</li>\n</ul>",
        "example": "1234"
      },
      "PayoutCancelStatus": {
        "type": "string",
        "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n",
        "example": "CANCELLED",
        "enum": [
          "PENDING_CANCELLATION",
          "CANCELLED"
        ]
      },
      "CavvResultCode-1": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "CAVV result code. The cavvResultCode identifies the outcome of the CAVV validation. Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a><br><br>\n<b>Note:</b> When using dual cryptograms (both TAVV and CAVV), if TAVV is valid then cavvResultCode conveys the outcome of the CAVV validation."
      },
      "ForeignExchangeFee": {
        "type": "number",
        "description": "Foreign exchange fee",
        "format": "double"
      },
      "NotificationsErrorResponse": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The short description of the error."
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "type": "integer",
            "description": "3 digit HTTP status code",
            "example": 400
          },
          "details": {
            "type": "array",
            "description": "Reserved for future use.",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "A short code indicating the specific error that occurred."
                },
                "message": {
                  "type": "string",
                  "description": "The long description of the specific error that occurred."
                },
                "location": {
                  "type": "string",
                  "description": "The place in the incoming message that the particular error occurred."
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "The long description of the error"
          }
        }
      },
      "AFTRTransactionDetailAdditionalData": {
        "anyOf": [
          {
            "title": "argentinaNationalServiceData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "argentinaNationalServiceData<br><br>Settlement Service Data object for Argentina required if transaction indicates Argentina national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/ArgentinaNationalServiceData"
              }
            }
          },
          {
            "title": "mexicoNationalServiceData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "mexicoNationalServiceData<br><br>Settlement Service Data object for Mexico required if transaction indicates Mexico national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/MexicoNationalServiceData"
              }
            }
          }
        ]
      },
      "DelegatedAuthenticationIndicator-3": {
        "type": "string",
        "description": "Delegated Authentication Indicator. If this exemption does not apply to the transaction, the value of \"FALSE\" is optional and the field may be omitted entirely. Clients requesting this exemption should also provide the the following request parameters: 1. visaMerchantIdentifier value, which is an unique identifier assigned by Visa for each merchant included in the identification program. Issuers can obtain a list of Visa-assigned merchant identifiers from Visa Online (VOL). 2. Cardholder Authentication Verification Value (CAVV) OR Token Authentication Verification Value (TAVV) Program Qualification: Acquirers that choose to participate will identify and qualify potential Delegates that meet the qualification criteria and work with them to evidence how their authentication capabilities are compliant and to obtain their agreement to the requirements of the Program through the Readiness Questionnaire. Token requestors may submit their Readiness Questionnaire directly to Visa. On a per transaction basis, the delegated entity will flag to the Issuer that SCA was performed through EMV 3DS (2.2 only) or VTS.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>FALSE – Delegated authentication not claimed/requested</li>\n  <li>TRUE – Delegated authentication claimed/requested</li>\n</ul>",
        "enum": [
          "true",
          "false"
        ]
      },
      "DelegatedAuthenticationIndicator-1": {
        "type": "string",
        "description": "Delegated authentication indicator, valid values \"true\" or \"false\"",
        "enum": [
          "true",
          "false"
        ]
      },
      "DelegatedAuthenticationIndicator-2": {
        "type": "string",
        "description": "Delegated authentication indicator"
      },
      "StructuredReferenceValue": {
        "maxLength": 100,
        "minLength": 1,
        "type": "string",
        "description": "SRI Value of the field."
      },
      "PaymentFacilitatorId": {
        "maxLength": 11,
        "minLength": 1,
        "type": "string",
        "description": "Unique identifier for the payment facilitator",
        "example": "PF123456789"
      },
      "BeneficiaryRelationship": {
        "maxLength": 30,
        "minLength": 1,
        "type": "string",
        "description": "Sender's relationship with recipient"
      },
      "AdjustmentTransactionDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "argentinaNationalServiceData<br><br>Settlement Service Data object for Argentina required if transaction indicates Argentina national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/ArgentinaNationalServiceData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "colombiaNationalServiceData<br><br>Settlement Service Data object for Colombia required if transaction indicates Colombia national settlement"
              },
              "value": {
                "$ref": "#/components/schemas/ColombiaNationalServiceData-1"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "mexicoNationalServiceData<br><br>Settlement Service Data object for Mexico required if transaction indicates Mexico national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/MexicoNationalServiceData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "digitalWalletProviderId<br><br><b>Optional.</b><br><br>Used to identify the digital wallet provider. V.I.P. does not edit the field; it also does not send it to the issuer processor nor does it return this field in the response."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "dynamicCurrencyConversionIndicator<br><br><b>Optional.</b><br><br>Used to indicate if the merchant or the ATM acquirer has performed Dynamic Currency Conversion (DCC)."
              },
              "value": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "rewardProgramIdentificationCode<br><br><b>Optional.</b><br><br>Used to identify the reward program."
              },
              "value": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string"
              }
            }
          }
        ]
      },
      "OCTServiceLocationDetails-3": {
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/ServiceLocationAddress-3"
          }
        },
        "description": "Service location details for Original Credit Transaction"
      },
      "FlexibleSettlementNotification-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/LimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/EODFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/NearLimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementOverdueFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/SettlementDueBreachedFlexibleSettlementNotification-1"
          },
          {
            "$ref": "#/components/schemas/ExposureInfoFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/PullFundsInitNotification-1"
          },
          {
            "$ref": "#/components/schemas/CurrencyInfoFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/PullFundsNotReceivedNotification"
          }
        ]
      },
      "CardEligbilityCheckRequest": {
        "required": [
          "initiatingPartyId",
          "paymentInstrument",
          "requestId"
        ],
        "properties": {
          "requestId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RequestId"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "paymentInstrument": {
            "properties": {
              "card": {
                "required": [
                  "accountNumber"
                ],
                "type": "object",
                "properties": {
                  "fastFunds": {
                    "type": "string",
                    "description": "Provide FastFunds response only if the request has true and nonFastFunds if it is false.\n",
                    "enum": [
                      "true",
                      "false"
                    ]
                  },
                  "accountType": {
                    "type": "string",
                    "description": "This is used to identify the account type of the primaryAccountNumber in the request.\n",
                    "enum": [
                      "debit",
                      "credit"
                    ]
                  },
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "The primary account number for which account validations are being performed\n"
                  },
                  "transactionType": {
                    "type": "string",
                    "description": "Internal Filter Transaction Type:\nmoneyTransfer-For any money Transfer BAI in OCT\nnomoneyTransfer-For any non money transfer BAIs in OCT.\npull-AFT transfer\n",
                    "enum": [
                      "moneyTransfer",
                      "nonMoneyTransfer",
                      "gambling",
                      "pull"
                    ]
                  },
                  "sharingGroupCode": {
                    "description": "Sharing group code\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/SharingGroupCode-1"
                      }
                    ]
                  },
                  "transactionJurisdiction": {
                    "type": "string",
                    "description": "Designates the scope of transfer as Domestic or Cross Border\n",
                    "enum": [
                      "domestic",
                      "crossBorder"
                    ]
                  }
                }
              }
            }
          }
        }
      },
      "OCTServiceLocationDetails-1": {
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/ServiceLocationAddress-1"
          }
        },
        "description": "Service location details for Original Credit Transaction"
      },
      "OneOfFields": {
        "type": "array",
        "description": "Conditional:\n\n- It defines field's group. At least one of the 'fields'/'oneOfFields'/'anyOfFields' groups will be populated.\n",
        "items": {
          "required": [
            "fields"
          ],
          "type": "object",
          "properties": {
            "fields": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Field"
              }
            }
          }
        }
      },
      "OCTServiceLocationDetails-2": {
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/ServiceLocationAddress-2"
          }
        },
        "description": "Service location details for Original Credit Transaction"
      },
      "OriginalActionCode": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Action code of the last transaction if action code of present transaction is 94 for duplicate transaction.",
        "example": "00"
      },
      "FlexibleSettlementNotification-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/LimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/EODFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/NearLimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementOverdueFlexibleSettlementNotification-2"
          },
          {
            "$ref": "#/components/schemas/SettlementDueBreachedFlexibleSettlementNotification-2"
          },
          {
            "$ref": "#/components/schemas/ExposureInfoFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/PullFundsInitNotification"
          },
          {
            "$ref": "#/components/schemas/CurrencyInfoFlexibleSettlementNotification"
          }
        ]
      },
      "RiskAssessmentResults": {
        "type": "object",
        "properties": {
          "exemptionReasonCode": {
            "$ref": "#/components/schemas/ExemptionReasonCode"
          },
          "scpExemptionIndicator": {
            "$ref": "#/components/schemas/ScpExemptionIndicator"
          },
          "traExemptionIndicator": {
            "$ref": "#/components/schemas/TraExemptionIndicator"
          },
          "lowValueExemptionIndicator": {
            "$ref": "#/components/schemas/LowValueExemptionIndicator"
          },
          "delegatedAuthenticationIndicator": {
            "$ref": "#/components/schemas/DelegatedAuthenticationIndicator"
          },
          "trustedMerchantExemptionIndicator": {
            "$ref": "#/components/schemas/TrustedMerchantExemptionIndicator"
          }
        }
      },
      "FlexibleSettlementNotification-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/LimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/EODFlexibleSettlementNotification-2"
          },
          {
            "$ref": "#/components/schemas/NearLimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementOverdueFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementDueBreachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/ExposureInfoFlexibleSettlementNotification"
          }
        ]
      },
      "CountryCluster": {
        "type": "string",
        "description": "country cluster code.",
        "enum": [
          "SEPA",
          "CEMAC",
          "UEMOA"
        ]
      },
      "NearLimitReachedDetails-1": {
        "required": [
          "currencyCode",
          "flexibleAmountLimit",
          "flexibleAmountRemaining",
          "flexibleAmountUtilized"
        ],
        "properties": {
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "flexibleAmountLimit": {
            "$ref": "#/components/schemas/FlexibleAmountLimit-1"
          },
          "flexibleAmountUtilized": {
            "$ref": "#/components/schemas/FlexibleAmountUtilized-1"
          },
          "flexibleAmountRemaining": {
            "$ref": "#/components/schemas/FlexibleAmountRemaining-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "DigitalAsset-1": {
        "required": [
          "address",
          "currencyCode",
          "network"
        ],
        "properties": {
          "address": {
            "maxLength": 50,
            "minLength": 1,
            "pattern": "^[A-Za-z0-9:]+(\\?dt=[A-Za-z0-9]+)?$",
            "description": "The crypto wallet address where funds will be sent",
            "example": "0x65BFCf1a6289a0b77b4D3F7d12005a05949FD8C3",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "network": {
            "description": "The blockchain network where the wallet operates \n(e.g., ETHEREUM, SOLANA)\n",
            "example": "SOLANA",
            "enum": [
              "ETHEREUM",
              "SOLANA"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "currencyCode": {
            "$ref": "#/components/schemas/DigitalAssetCurrencyCode-1"
          }
        },
        "description": "Recipient's digital asset object. \nConditional object when payoutMethod has value 'D'\n",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AFTRTransactionDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "argentinaNationalServiceData<br><br>Settlement Service Data object for Argentina required if transaction indicates Argentina national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/ArgentinaNationalServiceData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "colombiaNationalServiceData<br><br>Settlement Service Data object for Colombia required if transaction indicates Colombia national settlement"
              },
              "value": {
                "$ref": "#/components/schemas/ColombiaNationalServiceData-1"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "mexicoNationalServiceData<br><br>Settlement Service Data object for Mexico required if transaction indicates Mexico national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/MexicoNationalServiceData"
              }
            }
          }
        ]
      },
      "PayoutDigitalAssetRequestAltered-9": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-12"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID-2"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset-1"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-9"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AddressLine3": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "This field contains individual recipient's 3rd line of address.",
        "example": "Building 4"
      },
      "PayoutDigitalAssetRequestAltered-7": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-9"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "AddressLine2": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "This field contains individual recipient's 2nd line of address."
      },
      "GivPreviouslyUpdatedFlag": {
        "type": "string",
        "description": "Flag indicating if the Guaranteed Issuer Value (GIV) was previously updated",
        "example": "N"
      },
      "PayoutDigitalAssetRequestAltered-8": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-10"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID-1"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset-1"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-8"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AddressLine1": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "This field contains individual recipient's 1st line of address.",
        "example": "555 Dragon Drive"
      },
      "PayoutDigitalAssetRequestAltered-5": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-7"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequestAltered-6": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-8"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequestAltered-3": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequestAltered-4": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-6"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequestAltered-1": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-1"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequestAltered-2": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-2"
              }
            ]
          }
        }
      },
      "RecipientTransactorDetail-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-4"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-3"
          }
        ]
      },
      "RecipientTransactorDetail-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-5"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-2"
          }
        ]
      },
      "RecipientTransactorDetail-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-2"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-2"
          }
        ]
      },
      "RecipientTransactorDetail-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-3"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-1"
          }
        ]
      },
      "RecipientTransactorDetail-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-1"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-1"
          }
        ]
      },
      "Status-1": {
        "type": "string",
        "description": "Overall status of the transaction",
        "example": "PAYMENT_DELIVERED",
        "enum": [
          "PAYMENT_DELIVERED",
          "PAYMENT_DECLINED",
          "IN_PROGRESS"
        ]
      },
      "SendPayoutRequest-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-5"
          }
        ]
      },
      "SenderAddress": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Address of the sender"
      },
      "SendPayoutRequest-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-6"
          }
        ]
      },
      "Status-2": {
        "type": "string",
        "description": "Overall status of the transaction",
        "example": "APPROVED",
        "enum": [
          "COMPLETED",
          "FAILED",
          "PENDING"
        ]
      },
      "SendPayoutRequest-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-4"
          }
        ]
      },
      "RecipientAccountNumber-2": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "Account number of the recipient. When present, this field contains the sender's account number. This field is mandatory in XB AFTs; it will contain the destination account number being funded with the AFT (e.g., IBAN number for loading a bank account, proprietary wallet number for loading a wallet, prepaid PAN number for loading a card, money transfer operator proprietary account number with acquirer for funding a money transfer).",
        "example": "1234567890123456789"
      },
      "ValidatePayoutWalletRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest"
          }
        ]
      },
      "SendPayoutRequest-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-7"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-7"
          }
        ]
      },
      "SendPayoutRequest-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-2"
          }
        ]
      },
      "SendPayoutRequest-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-3"
          }
        ]
      },
      "RecipientAccountNumber-1": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "Recipient Account number\n"
      },
      "PayoutResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-1"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "SendPayoutRequest-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest"
          }
        ]
      },
      "SendPayoutRequest-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-1"
          }
        ]
      },
      "SendPayoutRequest-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-1"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-1"
          }
        ]
      },
      "NationalReimbursementFee": {
        "type": "number",
        "description": "National reimbursement fee",
        "format": "double"
      },
      "PayoutResponse-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Transaction Information And Status - Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-4"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Transaction Information And Status - Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-3"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Transaction Information And Status - Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-2"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutResponse-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus-1"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutResponse-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutResponse-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Transaction Information And Status - Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-3"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutResponse-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus-1"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-5"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletVerifyResponse": {
        "required": [
          "verificationId",
          "verificationStatus"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "verificationStatus": {
            "type": "string",
            "description": "Provides the status of verification request. * COMPLETED - Request was completed and result is available. * NOT_COMPLETED - Wallet Partner's end wallet operator or Wallet Operator not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "walletVerificationDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletVerificationDetail"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED"
      },
      "ServiceDetail-1": {
        "properties": {
          "traceable": {
            "type": "boolean",
            "description": "Indicates if a payout transaction is traceable"
          },
          "recallable": {
            "type": "boolean",
            "description": "Indicates if a payout transaction is recallable"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rail used for the payout transaction",
            "enum": [
              "ACH",
              "RTP",
              "RTGS",
              "SWIFT"
            ]
          },
          "isFinalStatus": {
            "type": "boolean",
            "description": "Only populated at PAYMENT_SENT status. If 'false' indicates that network partner will provide any of the following status 'PAYMENT_DELIVERED', 'DELIVERED_TO_SCHEME', 'DELIVERED_TO_RECIPIENT_BANK'."
          }
        }
      },
      "ServiceDetail-2": {
        "properties": {
          "traceable": {
            "type": "boolean",
            "description": "Indicates if a payout transaction is traceable"
          },
          "recallable": {
            "type": "boolean",
            "description": "Indicates if a payout transaction is recallable"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rail used for the payout transaction",
            "enum": [
              "ACH",
              "RTP",
              "RTGS",
              "SWIFT"
            ]
          }
        }
      },
      "ServiceDetail-3": {
        "properties": {
          "traceable": {
            "description": "Indicates if a payout transaction is traceable",
            "exampleSetFlag": false,
            "types": [
              "boolean"
            ]
          },
          "recallable": {
            "description": "Indicates if a payout transaction is recallable",
            "exampleSetFlag": false,
            "types": [
              "boolean"
            ]
          },
          "paymentRail": {
            "description": "Indicates the payment rail used for the payout transaction",
            "enum": [
              "ACH",
              "RTP",
              "RTGS",
              "SWIFT"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "isFinalStatus": {
            "description": "Only populated at PAYMENT_SENT status. If 'false' indicates that network partner will provide any of the following status 'PAYMENT_DELIVERED', 'DELIVERED_TO_SCHEME', 'DELIVERED_TO_RECIPIENT_BANK'.",
            "exampleSetFlag": false,
            "types": [
              "boolean"
            ]
          }
        },
        "exampleSetFlag": false
      },
      "PayoutToWalletRequest": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID"
              }
            ]
          }
        }
      },
      "AdditionalDataName-1": {
        "maxLength": 35,
        "minLength": 1,
        "description": "Name of the field.",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "OCTNetworkResponsePosData-1": {
        "type": "object",
        "properties": {
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData-1"
          }
        }
      },
      "WalletQueryOnlyResponse-11": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-9"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse-3"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse-2"
          }
        ],
        "exampleSetFlag": false
      },
      "WalletQueryOnlyResponse-12": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-10"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse-3"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse-3"
          }
        ],
        "exampleSetFlag": false
      },
      "WalletQueryOnlyResponse-13": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-11"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse-4"
          }
        ]
      },
      "VplContact": {
        "type": "string",
        "description": "Contact information for VPL Client Support."
      },
      "AccountQueryOnlySuccessResponse-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-6"
                  }
                ],
                "exampleSetFlag": false
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel-1"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-6"
                  }
                ],
                "exampleSetFlag": false
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-3"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-5"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId-1"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetSenderType": {
        "description": "Identifies the type of sender. Only Company type is supported for Digital Asset Payouts.\n* C - Company\n",
        "example": "C",
        "enum": [
          "C"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "DigitalAssetRecipientIsIndividual": {
        "required": [
          "address",
          "dateOfBirth",
          "firstName",
          "lastName",
          "type"
        ],
        "properties": {
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient last name. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br> The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "AccountQueryOnlySuccessResponse-11": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/TransactionStatus-1"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-3"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-7"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-6"
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-6"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "401ErrorResponseObject-1": {
        "properties": {
          "reason": {
            "description": "The short description of the error.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "description": "3 digit HTTP status code",
            "example": 401,
            "exampleSetFlag": true,
            "types": [
              "integer"
            ]
          },
          "details": {
            "items": {
              "properties": {
                "code": {
                  "description": "A short code indicating the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "message": {
                  "description": "The long description of the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "location": {
                  "description": "The place in the incoming message that the particular error occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "message": {
            "description": "The long description of the error",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "CardVerificationResults": {
        "type": "object",
        "properties": {
          "cavvResultCode": {
            "$ref": "#/components/schemas/CavvResultCode"
          },
          "cvv2ResultCode": {
            "$ref": "#/components/schemas/Cvv2ResultCode"
          },
          "addressVerification": {
            "$ref": "#/components/schemas/AddressVerificationResult"
          },
          "exemptionReasonCode": {
            "$ref": "#/components/schemas/ExemptionReasonCode"
          }
        }
      },
      "NetworkResponses": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "PullFundsDetailsFundsNotRceived-3": {
        "required": [
          "expectedDebitDateTime",
          "originalDueDateTime"
        ],
        "type": "object",
        "properties": {
          "iBan": {
            "maxLength": 34,
            "minLength": 1,
            "type": "string",
            "description": "The IBAN, if configured.\n"
          },
          "bankName": {
            "description": "The bank name, if configured.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "accountNumber": {
            "maximum": 4,
            "minimum": 1,
            "type": "integer",
            "description": "The last 4 digits of the account number, if configured.\n"
          },
          "originalDueDateTime": {
            "description": "The date and time when the amount was originally due.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "expectedDebitDateTime": {
            "description": "The date and time when the debit request was initiated.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "S2AMetaData-1": {
        "required": [
          "recipientDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "recipientDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientDetailMetadata-1"
              }
            ]
          },
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionDetailMetadata-1"
              }
            ]
          }
        }
      },
      "S2AMetaData-3": {
        "required": [
          "recipientDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "recipientDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientDetailMetadata-1"
              }
            ]
          },
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionDetailMetadata-3"
              }
            ]
          }
        }
      },
      "S2AMetaData-2": {
        "required": [
          "recipientDetail",
          "transactionDetail"
        ],
        "properties": {
          "recipientDetail": {
            "$ref": "#/components/schemas/RecipientDetailMetadata-3"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/TransactionDetailMetadata-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "BalanceNotification-1": {
        "required": [
          "accountId",
          "balance",
          "eventType",
          "initiatingPartyId"
        ],
        "properties": {
          "balance": {
            "description": "array of balances for all currencies of the 'accountId'",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountBalance-2"
                },
                {
                  "properties": {
                    "operator": {
                      "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType",
                      "enum": [
                        "LESS_THAN"
                      ],
                      "exampleSetFlag": false,
                      "types": [
                        "string"
                      ]
                    },
                    "threshold": {
                      "$ref": "#/components/schemas/AmountWithZero-3"
                    },
                    "balanceTimestamp": {
                      "$ref": "#/components/schemas/TimestampType-1"
                    }
                  },
                  "exampleSetFlag": false,
                  "types": [
                    "object"
                  ]
                }
              ],
              "exampleSetFlag": false
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "accountId": {
            "$ref": "#/components/schemas/AccountId-1"
          },
          "eventType": {
            "description": "Indicates why the balance notification is triggered\n\nPossible values:\n* `THRESHOLD` - When balance threshold is exceeded\n* `LIQUIDITY_FAILURE` - when balance is negative\n* `PERIODIC` - Regular balance snapshot at certain day/time\n",
            "enum": [
              "THRESHOLD",
              "LIQUIDITY_FAILURE",
              "PERIODIC"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "S2AMetaData-5": {
        "required": [
          "recipientDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "recipientDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientDetailMetadata-2"
              }
            ]
          },
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionDetailMetadata-5"
              }
            ]
          }
        }
      },
      "RecipientFirstName": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Recipient first name. Conditionally required when \"name\" is not provided.  The length of first name and last name combined must be at least 3 characters. Must not contain exclusively numeric characters. Must not contain special symbols. ISO20022 field name: Creditor First Name.\n",
        "example": "Jane"
      },
      "S2AMetaData-7": {
        "required": [
          "recipientDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "recipientDetail": {
            "$ref": "#/components/schemas/RecipientDetailMetadata"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/TransactionDetailMetadata"
          }
        }
      },
      "S2AMetaData-6": {
        "required": [
          "recipientDetail",
          "transactionDetail"
        ],
        "properties": {
          "recipientDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientDetailMetadata-3"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionDetailMetadata-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "FieldClientDriven": {
        "required": [
          "$ref",
          "name"
        ],
        "type": "object",
        "properties": {
          "$ref": {
            "type": "string",
            "description": "this refers to a JSON Schema definition within the document"
          },
          "name": {
            "type": "string",
            "description": "This field contains full JSON path (with '$' at the beginning) of the field in Send Payout API."
          }
        }
      },
      "PullFundsDetailsFundsNotRceived-1": {
        "required": [
          "expectedDebitDateTime",
          "originalDueDateTime"
        ],
        "type": "object",
        "properties": {
          "iBan": {
            "maximum": 34,
            "minimum": 1,
            "type": "string",
            "description": "The IBAN, if configured.\n"
          },
          "bankName": {
            "description": "The bank name, if configured.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "accountNumber": {
            "maximum": 4,
            "minimum": 1,
            "type": "integer",
            "description": "The last 4 digits of the account number, if configured.\n"
          },
          "originalDueDateTime": {
            "description": "The date and time when the amount was originally due.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "expectedDebitDateTime": {
            "description": "The date and time when the debit request will be initiated.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "BalanceNotification-5": {
        "required": [
          "accountId",
          "balance",
          "eventType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "balance": {
            "type": "array",
            "description": "array of balances for all currencies of the 'accountId'",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountBalance-1"
                },
                {
                  "type": "object",
                  "properties": {
                    "operator": {
                      "type": "string",
                      "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType",
                      "enum": [
                        "LESS_THAN"
                      ]
                    },
                    "threshold": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/AmountWithZero"
                        }
                      ]
                    },
                    "balanceTimestamp": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/TimestampType"
                        }
                      ]
                    }
                  }
                }
              ]
            }
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "eventType": {
            "type": "string",
            "description": "Indicates why the balance notification is triggered\n\nPossible values:\n* `THRESHOLD` - When balance threshold is exceeded\n* `LIQUIDITY_FAILURE` - when balance is negative\n* `PERIODIC` - Regular balance snapshot at certain day/time\n",
            "enum": [
              "THRESHOLD",
              "LIQUIDITY_FAILURE",
              "PERIODIC"
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          }
        }
      },
      "BalanceNotification-4": {
        "required": [
          "accountId",
          "balance",
          "eventType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "balance": {
            "type": "array",
            "description": "array of balances for all currencies of the 'accountId'",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountBalance-1"
                },
                {
                  "type": "object",
                  "properties": {
                    "operator": {
                      "type": "string",
                      "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType",
                      "enum": [
                        "LESS_THAN"
                      ]
                    },
                    "threshold": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/AmountWithZero"
                        }
                      ]
                    },
                    "balanceTimestamp": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/TimestampType"
                        }
                      ]
                    }
                  }
                }
              ]
            }
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "eventType": {
            "type": "string",
            "description": "Indicates why the balance notification is triggered\n\nPossible values:\n* `THRESHOLD` - When balance threshold is exceeded\n* `LIQUIDITY_FAILURE` - when balance is negative\n* `PERIODIC` - Regular balance snapshot at certain day/time\n",
            "enum": [
              "THRESHOLD",
              "LIQUIDITY_FAILURE",
              "PERIODIC"
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          }
        }
      },
      "PullFundsDetailsFundsNotRceived-2": {
        "required": [
          "expectedDebitDateTime",
          "originalDueDateTime"
        ],
        "properties": {
          "iBan": {
            "maxLength": 34,
            "minLength": 1,
            "description": "The IBAN, if configured.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "bankName": {
            "description": "The bank name, if configured.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "accountNumber": {
            "maximum": 4,
            "minimum": 1,
            "description": "The last 4 digits of the account number, if configured.\n",
            "exampleSetFlag": false,
            "types": [
              "integer"
            ]
          },
          "originalDueDateTime": {
            "description": "The date and time when the amount was originally due.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType-1"
              }
            ],
            "exampleSetFlag": false
          },
          "expectedDebitDateTime": {
            "description": "The date and time when the debit request was initiated.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType-1"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "BalanceNotification-3": {
        "required": [
          "accountId",
          "balance",
          "eventType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "balance": {
            "type": "array",
            "description": "array of balances for all currencies of the 'accountId'",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountBalance-1"
                },
                {
                  "type": "object",
                  "properties": {
                    "operator": {
                      "type": "string",
                      "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType",
                      "enum": [
                        "LESS_THAN"
                      ]
                    },
                    "threshold": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/AmountWithZero"
                        }
                      ]
                    },
                    "balanceTimestamp": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/TimestampType"
                        }
                      ]
                    }
                  }
                }
              ]
            }
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "eventType": {
            "type": "string",
            "description": "Indicates why the balance notification is triggered\n\nPossible values:\n* `THRESHOLD` - When balance threshold is exceeded\n* `LIQUIDITY_FAILURE` - when balance is negative\n* `PERIODIC` - Regular balance snapshot at certain day/time\n",
            "enum": [
              "THRESHOLD",
              "LIQUIDITY_FAILURE",
              "PERIODIC"
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          }
        }
      },
      "AFTOriginatorDetailAdditionalData": {
        "anyOf": [
          {
            "title": "masterCardPartnerIdCode",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardPartnerIdCode<br><br><b>Conditional.</b><br><br>This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.<br><br>This field is conditionally required for all MasterCard transactions."
              },
              "value": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "masterCardIndependentSalesOrganizationId",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardIndependentSalesOrganizationId<br><br><b>Conditional.</b><br><br>This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.<br><br>This field is conditionally required for all MasterCard transactions."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "masterCardSubMerchantId",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardSubMerchantId<br><br>Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved and for all MasterCard transactions."
              },
              "value": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "masterCardMerchantPaymentGatewayId",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardMerchantPaymentGatewayId<br><br>This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "merchantPseudoAbaNumber",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "merchantPseudoAbaNumber<br><br>This is a number that uniquely identifies the originator when they sign up to send Push Payment Gateway transactions. On enrollment, an originator will get a single pseudo-value that is assigned by Visa. The other networks will assign their own unique values for the originator.<br><br><b>Note:</b><br>Supported only in US for domestic transactions involving Push Payments Gateway Service."
              },
              "value": {
                "maxLength": 9,
                "minLength": 9,
                "type": "string"
              }
            }
          }
        ]
      },
      "BalanceNotification-2": {
        "required": [
          "accountId",
          "balance",
          "eventType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "balance": {
            "type": "array",
            "description": "array of balances for all currencies of the 'accountId'",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountBalance-1"
                },
                {
                  "type": "object",
                  "properties": {
                    "operator": {
                      "type": "string",
                      "description": "operator only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType",
                      "enum": [
                        "LESS_THAN"
                      ]
                    },
                    "threshold": {
                      "$ref": "#/components/schemas/AmountWithZero-1"
                    },
                    "balanceTimestamp": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/TimestampType"
                        }
                      ]
                    }
                  }
                }
              ]
            }
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "eventType": {
            "type": "string",
            "description": "Indicates why the balance notification is triggered\n\nPossible values:\n* `THRESHOLD` - When balance threshold is exceeded\n* `LIQUIDITY_FAILURE` - when balance is negative\n* `PERIODIC` - Regular balance snapshot at certain day/time\n",
            "enum": [
              "THRESHOLD",
              "LIQUIDITY_FAILURE",
              "PERIODIC"
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          }
        }
      },
      "PostingDate-4": {
        "required": [
          "cutoffDateTime",
          "expectedPostingDate"
        ],
        "type": "object",
        "properties": {
          "cutoffDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDate-4"
              }
            ]
          }
        }
      },
      "PostingDate-3": {
        "required": [
          "cutoffDateTime",
          "expectedPostingDate"
        ],
        "type": "object",
        "properties": {
          "cutoffDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDate-3"
              }
            ]
          }
        }
      },
      "ErrorResponseInNotificationForFailedRequest": {
        "required": [
          "reason",
          "status"
        ],
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The short description of the error."
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "type": "integer",
            "description": "3 digit HTTP status code",
            "example": 400
          },
          "details": {
            "type": "array",
            "items": {
              "required": [
                "code",
                "message"
              ],
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "A short code indicating the specific error that occurred."
                },
                "message": {
                  "type": "string",
                  "description": "The long description of the specific error that occurred."
                },
                "location": {
                  "type": "string",
                  "description": "The place in the incoming message that the particular error occurred."
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "The long description of the error"
          }
        }
      },
      "PostingDate-2": {
        "required": [
          "cutoffDateTime",
          "expectedPostingDate"
        ],
        "type": "object",
        "properties": {
          "cutoffDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDate-2"
              }
            ]
          }
        }
      },
      "BalanceNotification-7": {
        "required": [
          "accountId",
          "balance",
          "eventType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "balance": {
            "type": "array",
            "description": "array of balances for all currencies of the 'accountId'",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountBalance"
                },
                {
                  "type": "object",
                  "properties": {
                    "operator": {
                      "type": "string",
                      "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType",
                      "enum": [
                        "LESS_THAN"
                      ]
                    },
                    "threshold": {
                      "$ref": "#/components/schemas/AmountWithZero"
                    },
                    "balanceTimestamp": {
                      "$ref": "#/components/schemas/TimestampType"
                    }
                  }
                }
              ]
            }
          },
          "accountId": {
            "$ref": "#/components/schemas/AccountId"
          },
          "eventType": {
            "type": "string",
            "description": "Indicates why the balance notification is triggered\n\nPossible values:\n* `THRESHOLD` - When balance threshold is exceeded\n* `LIQUIDITY_FAILURE` - when balance is negative\n* `PERIODIC` - Regular balance snapshot at certain day/time\n",
            "enum": [
              "THRESHOLD",
              "LIQUIDITY_FAILURE",
              "PERIODIC"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          }
        }
      },
      "PostingDate-1": {
        "required": [
          "cutoffDateTime",
          "expectedPostingDate"
        ],
        "type": "object",
        "properties": {
          "cutoffDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDate-1"
              }
            ]
          }
        }
      },
      "BalanceNotification-6": {
        "required": [
          "accountId",
          "balance",
          "eventType",
          "initiatingPartyId"
        ],
        "properties": {
          "balance": {
            "description": "array of balances for all currencies of the 'accountId'",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountBalance-2"
                },
                {
                  "properties": {
                    "operator": {
                      "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType",
                      "enum": [
                        "LESS_THAN"
                      ],
                      "exampleSetFlag": false,
                      "types": [
                        "string"
                      ]
                    },
                    "threshold": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/AmountWithZero-3"
                        }
                      ],
                      "exampleSetFlag": false
                    },
                    "balanceTimestamp": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/TimestampType-1"
                        }
                      ],
                      "exampleSetFlag": false
                    }
                  },
                  "exampleSetFlag": false,
                  "types": [
                    "object"
                  ]
                }
              ],
              "exampleSetFlag": false
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId-1"
              }
            ],
            "exampleSetFlag": false
          },
          "eventType": {
            "description": "Indicates why the balance notification is triggered\n\nPossible values:\n* `THRESHOLD` - When balance threshold is exceeded\n* `LIQUIDITY_FAILURE` - when balance is negative\n* `PERIODIC` - Regular balance snapshot at certain day/time\n",
            "enum": [
              "THRESHOLD",
              "LIQUIDITY_FAILURE",
              "PERIODIC"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "CardExpiryDate": {
        "maxLength": 4,
        "minLength": 4,
        "pattern": "^(0[1-9]|1[0-2])(2[0-9]|3[0-9])$",
        "type": "string",
        "description": "Expiration date of the recipient's card in MMYY format",
        "example": "1225"
      },
      "SenderIndividual": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names <br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "RecipientIsIndividual": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "PostingDate-7": {
        "required": [
          "cutoffDateTime",
          "expectedPostingDate"
        ],
        "type": "object",
        "properties": {
          "cutoffDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "expectedPostingDate": {
            "$ref": "#/components/schemas/ExpectedPostingDate-6"
          }
        }
      },
      "PostingDate-6": {
        "required": [
          "cutoffDateTime",
          "expectedPostingDate"
        ],
        "properties": {
          "cutoffDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDate"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PostingDate-5": {
        "required": [
          "cutoffDateTime",
          "expectedPostingDate"
        ],
        "properties": {
          "cutoffDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          },
          "expectedPostingDate": {
            "$ref": "#/components/schemas/ExpectedPostingDate-5"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "VerifyRecipientDetailResponse-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletVerifyResponse"
          },
          {
            "$ref": "#/components/schemas/AccountVerifyResponse-1"
          }
        ]
      },
      "VerifyRecipientDetailResponse-2": {
        "required": [
          "verificationId",
          "verificationStatus"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "verificationStatus": {
            "type": "string",
            "description": "Provides the status of verification request.\n* COMPLETED - Request was completed and result is available.\n* NOT_COMPLETED - Wallet Partner's end wallet operator or Wallet Operator not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "walletVerificationDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletVerificationDetail-1"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-1"
              }
            ]
          }
        }
      },
      "VerifyRecipientBank": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "countryCode",
          "currencyCode"
        ],
        "properties": {
          "BIC": {
            "description": "recipient bank account Business Identifier Code (BIC)\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution BIC\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BIC-1"
              }
            ],
            "exampleSetFlag": false
          },
          "bankCode": {
            "maxLength": 12,
            "minLength": 1,
            "description": "recipient bank account bank code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification\n",
            "example": "173",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "bankName": {
            "description": "Recipient's bank name\n\nISO20022 field name: Creditor Agent Financial Institution Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "branchCode": {
            "maxLength": 12,
            "minLength": 1,
            "description": "recipient bank account branch code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Branch Identification\n",
            "example": "123456",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "accountName": {
            "description": "recipient bank account name i.e. account holder name as recorded on recipient bank account\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "accountType": {
            "description": "Recipient bank account type\n\n* `1` - Checking\n* `2` - Saving\n* `3` - Maestra\n* `4` - Vista\n* `5` - Loan\n* `6` - NRE\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Type\n",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5",
              "6"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "countryCode": {
            "$ref": "#/components/schemas/AlphaCountryCode-3"
          },
          "bankCodeType": {
            "description": "recipient bank account bank code type\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "enum": [
              "ABA",
              "SORT_CODE",
              "DEFAULT"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "currencyCode": {
            "description": "recipient bank account currency code\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "accountNumber": {
            "description": "recipient bank account number\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountNumber-2"
              }
            ],
            "exampleSetFlag": false
          },
          "accountNumberType": {
            "description": "recipient bank account number type. Valid values: \"IBAN\", \"ALIAS\" and \"DEFAULT\"\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "ALIAS",
              "DEFAULT"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          }
        },
        "description": "Recipient's bank object, used for Verify Recipient requests.\n\nConditional object when payoutMethod has value 'B'. Unlike the Bank object used for\npayout requests, accountName is not required here - the Verify Recipient service\ndoes not enforce it as mandatory.\n",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "VerifyRecipientDetailResponse-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletVerifyResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountVerifyResponse-5"
          }
        ],
        "exampleSetFlag": false
      },
      "VerifyRecipientDetailResponse-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletVerifyResponse-3"
          },
          {
            "$ref": "#/components/schemas/AccountVerifyResponse-6"
          }
        ]
      },
      "WalletQueryOnlySuccessResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "SenderCountryOfBirth-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Sender country of birth. Conditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths). Format: 3-character ISO-3166 (Alpha-3) country code\n",
        "example": "USA"
      },
      "VerifyRecipientDetailResponse-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletVerifyResponse"
          },
          {
            "$ref": "#/components/schemas/AccountVerifyResponse-2"
          }
        ]
      },
      "VerifyRecipientDetailResponse-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletVerifyResponse"
          },
          {
            "$ref": "#/components/schemas/AccountVerifyResponse-3"
          }
        ]
      },
      "SenderCountryOfBirth-2": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nSender country of birth. ISO20022 field name: Debtor Country of Birth. Refer to Payouts Endpoint Guide on country-specific required fields and lengths.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Must follow ISO 3166-1 alpha-3 standard (3-character Alpha-3 country code).</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid ISO 3166-1 alpha-3 country code</li>\n  <li>Uppercase letters only</li>\n  <li>No spaces or special symbols</li>\n</ul>",
        "example": "USA"
      },
      "Province": {
        "maxLength": 25,
        "minLength": 1,
        "type": "string",
        "description": "When present, this field contains individual recipient's address subdivision Major code, state or province",
        "example": "New Mexico"
      },
      "VerifyRecipientDetailResponse-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletVerifyResponse-1"
          },
          {
            "$ref": "#/components/schemas/AccountVerifyResponse-4"
          }
        ],
        "exampleSetFlag": false
      },
      "PayoutMethod": {
        "type": "string",
        "description": "Originating Entity must indicate the payout method i.e. Account or Wallet\n\nValid values:\n- \"B\" Visa Direct Account\n- \"W\" Visa Direct Wallet\n",
        "enum": [
          "B",
          "W"
        ]
      },
      "SenderAccountWalletPayoutAddress-1": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "SenderAccountWalletPayoutAddress-2": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-2"
              }
            ]
          }
        }
      },
      "ExpectedPostingDate": {
        "maxLength": 10,
        "minLength": 10,
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nIt is optional field, if exists, indicates expected posting date change\n\nISO20022 field name: Interbank Settlement Date\n",
        "format": "date",
        "example": "1980-02-01"
      },
      "NationalServiceData": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ArgentinaNationalServiceData"
          },
          {
            "$ref": "#/components/schemas/MexicoNationalServiceData"
          }
        ]
      },
      "CardTransactionResponse-7": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-7"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "QueryResponseData-16": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-18"
          }
        },
        "description": "Query response data structure"
      },
      "CardAcceptor-1": {
        "required": [
          "id",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Card acceptor ID"
          },
          "name": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Name of the card acceptor"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-1"
          },
          "terminalId": {
            "maxLength": 8,
            "type": "string",
            "description": "Identifier for the terminal at the card acceptor location",
            "example": "TERM1234"
          },
          "legalBusinessName": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Legal business name of the card acceptor"
          },
          "paymentFacilitator": {
            "type": "object",
            "properties": {
              "id": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "Payment facilitator ID",
                "example": "PF123456789"
              },
              "name": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "Payment facilitator name",
                "example": "Payment Facilitator Inc"
              },
              "address": {
                "type": "object",
                "properties": {
                  "city": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string",
                    "description": "City",
                    "example": "San Francisco"
                  },
                  "state": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "State code",
                    "example": "CA"
                  },
                  "country": {
                    "maxLength": 3,
                    "minLength": 3,
                    "type": "string",
                    "description": "Country code",
                    "example": "USA"
                  },
                  "postalCode": {
                    "maxLength": 10,
                    "minLength": 5,
                    "type": "string",
                    "description": "Postal code",
                    "example": "94105"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address line",
                    "example": "123 Market St"
                  }
                }
              },
              "submerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Submerchant ID",
                "example": "SUB123456789012"
              }
            }
          },
          "merchantCategoryCode": {
            "type": "number",
            "description": "Merchant category code"
          },
          "merchantVerificationValue": {
            "maxLength": 10,
            "minLength": 10,
            "type": "string",
            "description": "Merchant verification value"
          }
        }
      },
      "CardTransactionResponse-6": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-6"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardTransactionResponse-9": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-9"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "QueryResponseData-14": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-16"
          }
        },
        "description": "Query response data structure"
      },
      "CardTransactionResponse-8": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-8"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "SourceOfFunds-1": {
        "type": "string",
        "description": "Sender source of funds indicator i.e. the funding method used by the sender to fund the payout.Valid values are:\nConditional - source of funds is required by some endpoints, please check for Visa Payment Guide for details  \n\n01 = Visa credit\n02 = Visa debit\n03 = Visa prepaid\n04 = Cash\n05 = Deposit accounts other than those linked to a Visa card (includes checking/savings accounts and proprietary debit/ATMcards)\n06 = Credit accounts other than those linked to a Visa card (includes credit cards and proprietary credit lines)\n\nNote: For any Company to Company (C2C) or Company to Individual (C2I) use-case, this should be “05”, since the funds come from the sender’s bank account. This field is required for Money Transfers and Funds Disbursements.\n\nISO20022 field name: Debtor Account Type\n"
      },
      "SourceOfFunds-2": {
        "type": "string",
        "description": "Sender source of funds indicator i.e. the funding method used by the sender to fund the payout.Valid values are:\nConditional - source of funds is required by some endpoints, please check for Visa Payment Guide for details  \n\n01 = Visa credit\n02 = Visa debit\n03 = Visa prepaid\n04 = Cash\n05 = Deposit accounts other than those linked to a Visa card (includes checking/savings accounts and proprietary debit/ATMcards)\n06 = Credit accounts other than those linked to a Visa card (includes credit cards and proprietary credit lines)\n\nNote: For any Company to Company (C2C) or Company to Individual (C2I) use-case, this should be “05”, since the funds come from the sender’s bank account. This field is required for Money Transfers and Funds Disbursements.\n\nISO20022 field name: Debtor Account Type Source of Funds\n"
      },
      "MerchantVerificationValue-1": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "Conditional\nThe concatenated Merchant Verification Value of Visa assigned and Acquirer assigned value is returned. \n\nNote: This field is present if the MVV value was included on the Send Payout request\n"
      },
      "SourceOfFunds-3": {
        "description": "Sender source of funds indicator i.e. the funding method used by the sender to fund the payout.Valid values are:\nConditional - source of funds is required by some endpoints, please check for Visa Payment Guide for details  \n\n01 = Visa credit\n02 = Visa debit\n03 = Visa prepaid\n04 = Cash\n05 = Deposit accounts other than those linked to a Visa card (includes checking/savings accounts and proprietary debit/ATMcards)\n06 = Credit accounts other than those linked to a Visa card (includes credit cards and proprietary credit lines)\n\nNote: For any Company to Company (C2C) or Company to Individual (C2I) use-case, this should be “05”, since the funds come from the sender’s bank account.\n\nISO20022 field name: Debtor Account Type\n",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "MerchantVerificationValue-2": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant.",
        "example": "VISA123ACQ456"
      },
      "CardTransactionResponse-1": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-1"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardTransactionResponse-3": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-3"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardTransactionResponse-2": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-2"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardTransactionResponse-5": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-5"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "VerifyRecipientBank-1": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "countryCode",
          "currencyCode"
        ],
        "type": "object",
        "properties": {
          "BIC": {
            "description": "recipient bank account Business Identifier Code (BIC)\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution BIC\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BIC"
              }
            ]
          },
          "bankCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account bank code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification\n",
            "example": "173"
          },
          "bankName": {
            "description": "Recipient's bank name\n\nISO20022 field name: Creditor Agent Financial Institution Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "branchCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account branch code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Branch Identification\n",
            "example": "123456"
          },
          "accountName": {
            "description": "recipient bank account name i.e. account holder name as recorded on recipient bank account\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountName"
              }
            ]
          },
          "accountType": {
            "type": "string",
            "description": "Recipient bank account type\n\n* `1` - Checking\n* `2` - Saving\n* `3` - Maestra\n* `4` - Vista\n* `5` - Loan\n* `6` - NRE\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Type\n",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5",
              "6"
            ]
          },
          "countryCode": {
            "$ref": "#/components/schemas/AlphaCountryCode"
          },
          "bankCodeType": {
            "type": "string",
            "description": "recipient bank account bank code type\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "enum": [
              "ABA",
              "SORT_CODE",
              "DEFAULT"
            ]
          },
          "currencyCode": {
            "description": "recipient bank account currency code\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "accountNumber": {
            "description": "recipient bank account number\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountNumber"
              }
            ]
          },
          "accountNumberType": {
            "type": "string",
            "description": "recipient bank account number type. Valid values: \"IBAN\", \"ALIAS\" and \"DEFAULT\"\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "ALIAS",
              "DEFAULT"
            ]
          }
        },
        "description": "Recipient's bank object, used for Verify Recipient requests.\n\nConditional object when payoutMethod has value 'B'. Unlike the Bank object used for\npayout requests, accountName is not required here - the Verify Recipient service\ndoes not enforce it as mandatory.\n"
      },
      "CardTransactionResponse-4": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-4"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardTransactionDetail-10": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail-9"
          }
        ]
      },
      "VerificationCard": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "expiryDate"
        ],
        "type": "object",
        "properties": {
          "cvv2": {
            "maxLength": 4,
            "minLength": 3,
            "type": "string",
            "description": "The cvv2Value provided by the account holder",
            "example": "123"
          },
          "tavv": {
            "maxLength": 40,
            "minLength": 1,
            "type": "string",
            "description": "Token authentication verification or token cryptogram value provided by the token provider for the card token in the request",
            "example": "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCD"
          },
          "expiryDate": {
            "maxLength": 7,
            "minLength": 7,
            "type": "string",
            "description": "The expiration date for the primaryAccountNumber in the request",
            "example": "2025-12"
          },
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Required if accountNumberType is PCI_TOKEN",
            "example": "MERCHANT001"
          },
          "accountType": {
            "type": "string",
            "description": "This is used to identify the account type of the primaryAccountNumber in the request. Default is set to 00 if not provided. 00=Not applicable, 10=Saving account, 20=Checking account, 30=Credit card account, 40=Universal account",
            "example": "30",
            "default": "00",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "3-digit numeric or 3-character alpha ISO currency code for the currency of the card",
            "example": "USD 840"
          },
          "accountNumber": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The primary account number for which account validations are being performed",
            "example": "4111111111111111"
          },
          "accountNumberType": {
            "type": "string",
            "description": "Type of account number",
            "example": "DEFAULT",
            "enum": [
              "DEFAULT",
              "PCI_TOKEN",
              "PAYNAME"
            ]
          }
        },
        "description": "Card details for Verification check"
      },
      "ReturnReasonCodeDescription": {
        "maxLength": 105,
        "minLength": 1,
        "type": "string",
        "description": "Indicates the PSP return description when the payout is returned. Refer to PSP Return Description\n\nISO20022 field name: Payment Return - PSP Return Description\n"
      },
      "PersistentFX-1": {
        "type": "object",
        "properties": {
          "exchangeRate": {
            "$ref": "#/components/schemas/ExchangeRate-1"
          },
          "visaRateTableId": {
            "$ref": "#/components/schemas/VisaRateTableId-1"
          },
          "visaRateProvider": {
            "$ref": "#/components/schemas/VisaRateProvided-1"
          }
        }
      },
      "AFTTransactionFees-2": {
        "type": "object",
        "properties": {
          "surcharge": {
            "$ref": "#/components/schemas/Surcharge"
          },
          "foreignExchangeFee": {
            "$ref": "#/components/schemas/ForeignExchangeFee"
          }
        }
      },
      "AFTTransactionFees-1": {
        "type": "object",
        "properties": {
          "surcharge": {
            "$ref": "#/components/schemas/Surcharge"
          },
          "foreignExchangeFee": {
            "$ref": "#/components/schemas/ForeignExchangeFee"
          },
          "nationalReimbursementFee": {
            "$ref": "#/components/schemas/NationalReimbursementFee"
          }
        }
      },
      "AFTTransactionFees-3": {
        "type": "object",
        "properties": {
          "surcharge": {
            "$ref": "#/components/schemas/Surcharge-1"
          },
          "foreignExchangeFee": {
            "$ref": "#/components/schemas/ForeignExchangeFee-1"
          },
          "nationalReimbursementFee": {
            "$ref": "#/components/schemas/NationalReimbursementFee-1"
          }
        }
      },
      "MiddleName": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Optional middle name or middle initial when recipient is an individual.",
        "example": "A"
      },
      "FlexibleAmountLimit-1": {
        "description": "Liquidity limit.",
        "format": "double",
        "exampleSetFlag": false,
        "types": [
          "number"
        ]
      },
      "Contact": {
        "type": "object",
        "properties": {
          "contactType": {
            "type": "string",
            "enum": [
              "PHONE"
            ]
          },
          "contactValue": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string"
          }
        }
      },
      "IdCode": {
        "maxLength": 15,
        "type": "string",
        "description": "Identification code for the card acceptor",
        "example": "VMT123456789"
      },
      "CardAcceptor-2": {
        "required": [
          "id",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Card acceptor ID"
          },
          "name": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Name of the card acceptor"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-2"
          },
          "terminalId": {
            "maxLength": 8,
            "type": "string",
            "description": "Identifier for the terminal at the card acceptor location",
            "example": "TERM1234"
          },
          "legalBusinessName": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Legal business name of the card acceptor"
          },
          "paymentFacilitator": {
            "type": "object",
            "properties": {
              "id": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "Payment facilitator ID",
                "example": "PF123456789"
              },
              "name": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "Payment facilitator name",
                "example": "Payment Facilitator Inc"
              },
              "address": {
                "type": "object",
                "properties": {
                  "city": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string",
                    "description": "City",
                    "example": "San Francisco"
                  },
                  "state": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "State code",
                    "example": "CA"
                  },
                  "country": {
                    "maxLength": 3,
                    "minLength": 3,
                    "type": "string",
                    "description": "Country code",
                    "example": "USA"
                  },
                  "postalCode": {
                    "maxLength": 10,
                    "minLength": 5,
                    "type": "string",
                    "description": "Postal code",
                    "example": "94105"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address line",
                    "example": "123 Market St"
                  }
                }
              },
              "submerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Submerchant ID",
                "example": "SUB123456789012"
              }
            }
          },
          "merchantCategoryCode": {
            "type": "number",
            "description": "Merchant category code"
          },
          "merchantVerificationValue": {
            "maxLength": 10,
            "minLength": 10,
            "type": "string",
            "description": "Merchant verification value"
          }
        }
      },
      "CardAcceptor-3": {
        "required": [
          "id",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Card acceptor ID"
          },
          "name": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Name of the card acceptor"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-3"
          },
          "terminalId": {
            "maxLength": 8,
            "type": "string",
            "description": "Identifier for the terminal at the card acceptor location",
            "example": "TERM1234"
          },
          "legalBusinessName": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Legal business name of the card acceptor"
          },
          "paymentFacilitator": {
            "type": "object",
            "properties": {
              "id": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "Payment facilitator ID",
                "example": "PF123456789"
              },
              "name": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "Payment facilitator name",
                "example": "Payment Facilitator Inc"
              },
              "address": {
                "type": "object",
                "properties": {
                  "city": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string",
                    "description": "City",
                    "example": "San Francisco"
                  },
                  "state": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "State code",
                    "example": "CA"
                  },
                  "country": {
                    "maxLength": 3,
                    "minLength": 3,
                    "type": "string",
                    "description": "Country code",
                    "example": "USA"
                  },
                  "postalCode": {
                    "maxLength": 10,
                    "minLength": 5,
                    "type": "string",
                    "description": "Postal code",
                    "example": "94105"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address line",
                    "example": "123 Market St"
                  }
                }
              },
              "submerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Submerchant ID",
                "example": "SUB123456789012"
              }
            }
          },
          "merchantCategoryCode": {
            "type": "number",
            "description": "Merchant category code"
          },
          "merchantVerificationValue": {
            "maxLength": 10,
            "minLength": 10,
            "type": "string",
            "description": "Merchant verification value"
          }
        }
      },
      "PayoutAccountRequest-16": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountWalletPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletSenderIdentificationList"
                  }
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletSenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-3"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletRecipientIdentificationList-1"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletRecipientTransactorDetail-2"
              }
            ]
          }
        }
      },
      "PayoutAccountRequest-17": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-3"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-6"
              }
            ]
          }
        }
      },
      "PayoutAccountRequest-14": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountWalletPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletSenderIdentificationList"
                  }
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletSenderTransactorDetail"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-3"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletRecipientIdentificationList-1"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletRecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "PayoutAccountRequest-15": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-2"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-2"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-4"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-2"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-2"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-5"
              }
            ]
          }
        }
      },
      "PayoutAccountRequest-18": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "PayoutAccountRequest-19": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-8"
              }
            ]
          }
        }
      },
      "RecipientFirstName-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nRecipient first name. ISO20022 field name: Creditor First Name.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Alphabetic characters only (A–Z). May include spaces or hyphens for compound names.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Required when recipientDetail.name is not provided</li>\n  <li>The length of first name and last name combined must be at least 3 characters</li>\n  <li>Must not contain exclusively numeric characters</li>\n  <li>Must not contain special symbols</li>\n</ul>",
        "example": "John"
      },
      "AlphaCountryCode": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "3-character ISO-3166 (Alpha-3) country code.",
        "example": "USA"
      },
      "PayoutAccountRequest-12": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "AFTResponsePosData-1": {
        "type": "object",
        "properties": {
          "motoECIIndicator": {
            "description": "<b>Conditional</b><br><br>Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Refer to <a href=\"/request_response_codes#moto_eci_ind_codes\">Moto ECI Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/MotoECIIndicator-1"
              }
            ]
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData-1"
          }
        }
      },
      "PayoutAccountRequest-13": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-8"
              }
            ]
          }
        }
      },
      "OneOfFieldsClientDriven": {
        "type": "array",
        "description": "At least one of the 'fields'/'oneOfFields'/'anyOfFields' groups will be populated.\n",
        "items": {
          "required": [
            "fields"
          ],
          "type": "object",
          "properties": {
            "fields": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/FieldClientDriven"
              }
            }
          }
        }
      },
      "PayoutAccountRequest-11": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-3"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-3"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-3": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountWalletPayoutAddress-2"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletSenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-1"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletRecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletRecipientTransactorDetail-2"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-4": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-2"
              },
              "cityOfBirth": {
                "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CityOfBirth"
                  }
                ]
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "countryOfBirth": {
                "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCountryCode"
                  }
                ]
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-2"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-1"
              },
              "cityOfBirth": {
                "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CityOfBirth"
                  }
                ]
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "countryOfBirth": {
                "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCountryCode"
                  }
                ]
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-2"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-1": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-1"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-1"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-2": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountWalletPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletSenderTransactorDetail"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-1"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletRecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletRecipientTransactorDetail"
              }
            ]
          }
        }
      },
      "PosConditionCode": {
        "type": "number",
        "description": "Contains a code identifying transaction conditions at the point of sale or point of service.",
        "example": 59
      },
      "PayoutWalletRequest-9": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-8"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-7": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-8": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-5": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "cityOfBirth": {
                "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CityOfBirth"
                  }
                ]
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "countryOfBirth": {
                "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCountryCode"
                  }
                ]
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-1"
              },
              "cityOfBirth": {
                "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CityOfBirth"
                  }
                ]
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "countryOfBirth": {
                "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCountryCode"
                  }
                ]
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "QuoteIdStr": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "This field contains the unique number representing the FX Quote\n"
      },
      "Status": {
        "type": "string",
        "description": "Overall status of the transaction",
        "example": "PAYMENT_DELIVERED",
        "enum": [
          "PAYMENT_DELIVERED",
          "PAYMENT_DECLINED",
          "IN_PROGRESS"
        ]
      },
      "PayoutAccountRequest-27": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-4"
              }
            ],
            "exampleSetFlag": false
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-10"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-4"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-4"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-9"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "FundingDetails-3": {
        "required": [
          "currencyCode",
          "totalAmountDue"
        ],
        "properties": {
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "totalAmountDue": {
            "description": "Total amount due by due date. Pulled in this request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TotalAmountDue-1"
              }
            ],
            "exampleSetFlag": false
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails-3"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetRecipientIsCompany": {
        "required": [
          "address",
          "identificationList",
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetCompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "FundingDetails-2": {
        "required": [
          "currencyCode",
          "totalAmountDue"
        ],
        "properties": {
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "totalAmountDue": {
            "description": "Total amount due by due date. Pulled in this request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TotalAmountDue-1"
              }
            ],
            "exampleSetFlag": false
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutAccountRequest-28": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-11"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-2"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-11"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-2"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-2"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-14"
              }
            ]
          }
        }
      },
      "FundingDetails-1": {
        "required": [
          "currencyCode",
          "totalAmountDue"
        ],
        "type": "object",
        "properties": {
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "description": "Total amount due by due date. Pulled in this request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TotalAmountDue"
              }
            ]
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails-1"
          }
        }
      },
      "TransactionResult": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "NetworkResponses-10": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-2"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "TransactionIdType-1": {
        "type": "string",
        "description": "This field indicates the type of identifier\n- CLIENT_REFERENCE_ID is merchant's transaction reference ID\n- PAYOUT_ID is Visa's transaction reference ID \n",
        "enum": [
          "CLIENT_REFERENCE_ID",
          "PAYOUT_ID"
        ]
      },
      "VerificationOriginatorDetail-4": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "maxLength": 11,
            "minLength": 6,
            "type": "string",
            "description": "This field must contain an acquiring BIN",
            "example": "412345"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/VerificationCardAcceptor-2"
          },
          "acquirerCountryCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "The clients must provide a 3-digit numeric or 3-character alpha ISO country code",
            "example": "USA"
          }
        },
        "description": "Originator details for Verification check"
      },
      "VerificationOriginatorDetail-1": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "maxLength": 11,
            "minLength": 6,
            "type": "string",
            "description": "This field must contain an acquiring BIN",
            "example": "412345"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/VerificationCardAcceptor-1"
          },
          "acquirerCountryCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "The clients must provide a 3-digit numeric ISO country code",
            "example": "840"
          }
        },
        "description": "Originator details for Verification check"
      },
      "PayoutAccountRequest-29": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-9"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-15"
              }
            ]
          }
        }
      },
      "WalletVerifyResponse-2": {
        "required": [
          "verificationId",
          "verificationStatus"
        ],
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "verificationStatus": {
            "description": "Provides the status of verification request. * COMPLETED - Request was completed and result is available. * NOT_COMPLETED - Wallet Partner's end wallet operator or Wallet Operator not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "walletVerificationDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletVerificationDetail-2"
              }
            ],
            "exampleSetFlag": false
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletVerifyResponse-3": {
        "required": [
          "verificationId",
          "verificationStatus"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "verificationStatus": {
            "type": "string",
            "description": "Provides the status of verification request. * COMPLETED - Request was completed and result is available. * NOT_COMPLETED - Wallet Partner's end wallet operator or Wallet Operator not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "walletVerificationDetail": {
            "$ref": "#/components/schemas/WalletVerificationDetail"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference"
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED"
      },
      "FundingDetails-4": {
        "required": [
          "currencyCode",
          "totalAmountDue"
        ],
        "type": "object",
        "properties": {
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "description": "Total amount due by due date. Pulled in this request.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TotalAmountDue"
              }
            ]
          },
          "pullFundsDetails": {
            "$ref": "#/components/schemas/PullFundsDetails-4"
          }
        }
      },
      "ServiceLocationCity-2": {
        "maxLength": 13,
        "minLength": 1,
        "type": "string",
        "description": "City of the service location",
        "example": "Service City"
      },
      "VerifyRecipientWalletOnlyRequest-2": {
        "required": [
          "initiatingPartyId",
          "recipientDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Wallet\nValid values:\n- \"W\" Visa Direct Wallet\n",
            "enum": [
              "W"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "recipientDetail": {
            "required": [
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName-1"
                  }
                ],
                "exampleSetFlag": true
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "wallet": {
                "$ref": "#/components/schemas/Wallet-5"
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ServiceLocationCity-3": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field contains the name of the city where the cardholder received the services. This field is required for all MasterCard transactions.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Alphanumeric, spaces, and standard punctuation.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the official city name as per registration details.</li>\n  <li>Required only when the transaction meets MasterCard conditional requirements.</li>\n  <li>This field is required for all MasterCard transactions.</li>\n</ul>",
        "example": "Austin"
      },
      "WalletVerifyResponse-1": {
        "required": [
          "verificationId",
          "verificationStatus"
        ],
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "verificationStatus": {
            "description": "Provides the status of verification request. * COMPLETED - Request was completed and result is available. * NOT_COMPLETED - Wallet Partner's end wallet operator or Wallet Operator not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "walletVerificationDetail": {
            "$ref": "#/components/schemas/WalletVerificationDetail-2"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference-2"
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "VerifyRecipientWalletOnlyRequest-1": {
        "required": [
          "initiatingPartyId",
          "recipientDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Wallet\nValid values:\n- \"W\" Visa Direct Wallet\n",
            "enum": [
              "W"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "recipientDetail": {
            "required": [
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName-1"
                  }
                ],
                "exampleSetFlag": true
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "wallet": {
                "$ref": "#/components/schemas/Wallet-4"
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ChargeBearer": {
        "type": "string",
        "description": "Specify which party will pay charges due for processing of the payment. Possible values are DEBT (charges borne by debtor), CRED (charges borne by Creditor), SHAR (charges shared by debtor and creditor)\n",
        "enum": [
          "DEBT",
          "CRED",
          "SHAR"
        ]
      },
      "ServiceLocationCity-1": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "City of the service location",
        "example": "Service City"
      },
      "TransactionIdType-2": {
        "type": "string",
        "description": "TransactionIdType-1 - Transaction identifier type",
        "enum": [
          "clientReferenceId",
          "payoutId"
        ]
      },
      "PayoutAccountRequest-24": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-9"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-11"
              }
            ]
          }
        }
      },
      "TransactionIdType-3": {
        "description": "This field indicates the type of identifier\n- CLIENT_REFERENCE_ID is merchant's transaction reference ID\n- PAYOUT_ID is Visa's transaction reference ID\n",
        "enum": [
          "CLIENT_REFERENCE_ID",
          "PAYOUT_ID"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "PayoutAccountRequest-21": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail"
              }
            ]
          }
        }
      },
      "PosData": {
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData"
          },
          "panEntryMode": {
            "type": "number",
            "description": "PAN entry mode"
          },
          "posEnvironment": {
            "$ref": "#/components/schemas/PosEnvironment"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant"
          }
        }
      },
      "MemberComments": {
        "maxLength": 254,
        "minLength": 1,
        "type": "string",
        "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider.\n"
      },
      "VerifyRecipientWalletOnlyRequest-3": {
        "required": [
          "initiatingPartyId",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\nValid values:\n- \"W\" Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "recipientDetail": {
            "required": [
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "wallet": {
                "$ref": "#/components/schemas/Wallet-6"
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference"
          }
        }
      },
      "NetworkResponse": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/PosData-1"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-1"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "statusIdentifier": {
            "$ref": "#/components/schemas/StatusIdentifier"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData"
          },
          "riskAssessmentResults": {
            "$ref": "#/components/schemas/RiskAssessmentResults-1"
          },
          "reimbursementAttribute": {
            "$ref": "#/components/schemas/ReimbursementAttribute"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/CardVerificationResults"
          },
          "recipientIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "CancelDeferredPayoutResponseData": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "networkResponse",
              "status",
              "transactionIdentifier"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the cancel transaction",
                "example": "COMPLETED",
                "enum": [
                  "COMPLETED",
                  "FAILED",
                  "PENDING"
                ]
              },
              "networkResponse": {
                "required": [
                  "actionCode"
                ],
                "type": "object",
                "properties": {
                  "actionCode": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "The action code of the cancelled deferred OCT request:\n- 85: Deferred OCT cancellation successful\n- 25: Unable to locate deferred OCT request\n- R0: No action taken. Deferred OCT transaction already cancelled\n- 57: Transaction not permitted to cardholder\n- 21: Deferred OCT is under processing, cannot be cancelled\n",
                    "example": "85"
                  }
                },
                "description": "Network response details for the cancel operation"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier",
                "example": "CLIENT123456"
              },
              "transactionIdentifier": {
                "type": "string",
                "description": "Unique identifier assigned by Visa for the transaction",
                "example": "123456789012345"
              }
            },
            "description": "Transaction details for the cancel response"
          }
        },
        "description": "Response data for cancel deferred payout transaction"
      },
      "DigitalAssetRecipientIsIndividual-10": {
        "required": [
          "address",
          "dateOfBirth",
          "firstName",
          "lastName",
          "type"
        ],
        "properties": {
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/DigitalAssetRecipientPayoutAddress-1"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient last name. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br> The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount-3"
          }
        }
      },
      "CardPayoutResponse-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse-7"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "CardPayoutResponse-9": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse-8"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "CardPayoutResponse-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse-5"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "CardPayoutResponse-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse-6"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "CardPayoutResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse-3"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "ReplacementCardAccountNumber-1": {
        "maxLength": 28,
        "minLength": 1,
        "type": "string",
        "description": "Contains the account number of the replacement card provided by VAU.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain only numeric digits.</li>\n  <li>Cannot include spaces or special characters.</li>\n</ul>",
        "example": "4111111111111111"
      },
      "CardPayoutResponse-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse-4"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "CardPayoutResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200CardTransactionStatus-1"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "transactionResult": {
                "type": "array",
                "description": "The array of 'transactionResult' contains card network's processing details.\n",
                "items": {
                  "$ref": "#/components/schemas/TransactionResult"
                }
              },
              "transactionDateTime": {
                "description": "The time the request was processed by Visa. For combined payouts (Pull + Push), this reflects the processing time of the \"last leg\".\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        }
      },
      "CardPayoutResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse-2"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "OCTNetworkResponseSettlementInfo-1": {
        "required": [
          "settlementResponsibilityFlag"
        ],
        "type": "object",
        "properties": {
          "givUpdatedFlag": {
            "$ref": "#/components/schemas/GivUpdatedFlag"
          },
          "settlementAmount": {
            "$ref": "#/components/schemas/SettlementAmount"
          },
          "settlementServiceFlag": {
            "$ref": "#/components/schemas/SettlementServiceFlag"
          },
          "settlementCurrencyCode": {
            "$ref": "#/components/schemas/SettlementCurrencyCode-1"
          },
          "givPreviouslyUpdatedFlag": {
            "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag"
          },
          "settlementConversionRate": {
            "$ref": "#/components/schemas/FxConversionRate"
          },
          "settlementResponsibilityFlag": {
            "$ref": "#/components/schemas/SettlementResponsibilityFlag"
          }
        }
      },
      "CardPayoutResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse-1"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "OCTNetworkResponseSettlementInfo-2": {
        "required": [
          "settlementResponsibilityFlag"
        ],
        "type": "object",
        "properties": {
          "givUpdatedFlag": {
            "$ref": "#/components/schemas/GivUpdatedFlag-2"
          },
          "settlementAmount": {
            "$ref": "#/components/schemas/SettlementAmount-1"
          },
          "settlementServiceFlag": {
            "$ref": "#/components/schemas/SettlementServiceFlag-2"
          },
          "settlementCurrencyCode": {
            "$ref": "#/components/schemas/SettlementCurrencyCode-2"
          },
          "givPreviouslyUpdatedFlag": {
            "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-2"
          },
          "settlementConversionRate": {
            "$ref": "#/components/schemas/FxConversionRate-1"
          },
          "settlementResponsibilityFlag": {
            "$ref": "#/components/schemas/SettlementResponsibilityFlag-2"
          }
        }
      },
      "IndividualIdTypeAccount-1": {
        "enum": [
          "P",
          "D",
          "N",
          "T",
          "F"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "PayoutAccountRequest-30": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-5"
              }
            ],
            "exampleSetFlag": false
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-12"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-5"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-5"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-10"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutAccountRequest-31": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-13"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-6"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-11"
              }
            ]
          }
        }
      },
      "ServiceLocationDetails-1": {
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/ServiceLocationAddress-1"
          }
        }
      },
      "ServiceLocationDetails-2": {
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/ServiceLocationAddress-2"
          }
        }
      },
      "AFTCardAcceptor-2": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-2"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference-2"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/PaymentFacilitator-2"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/ServiceLocationDetails-2"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          },
          "remoteCommerceAcceptorIdentifier": {
            "$ref": "#/components/schemas/RemoteCommerceAcceptorIdentifier"
          }
        }
      },
      "ServiceLocationDetails-3": {
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/ServiceLocationAddress-3"
          }
        }
      },
      "AFTCardAcceptor-1": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-1"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference-1"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/PaymentFacilitator-1"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/ServiceLocationDetails-1"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          },
          "remoteCommerceAcceptorIdentifier": {
            "$ref": "#/components/schemas/RemoteCommerceAcceptorIdentifier"
          }
        }
      },
      "AccountRecipientIsCompany-10": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-15"
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount-3"
          }
        }
      },
      "AFTCardAcceptor-4": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId-2"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName-1"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID-1"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-3"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-2"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress-1"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName-1"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference-3"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation-1"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/PaymentFacilitator-4"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode-1"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/ServiceLocationDetails-3"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-2"
          },
          "remoteCommerceAcceptorIdentifier": {
            "$ref": "#/components/schemas/RemoteCommerceAcceptorIdentifier-1"
          }
        }
      },
      "BaseAmount": {
        "type": "number",
        "description": "Base amount for net reimbursement fee calculation",
        "format": "double",
        "example": 98.5
      },
      "AFTCardAcceptor-3": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-2"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference-2"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/PaymentFacilitator-3"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/ServiceLocationDetails-2"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          },
          "remoteCommerceAcceptorIdentifier": {
            "$ref": "#/components/schemas/RemoteCommerceAcceptorIdentifier"
          }
        }
      },
      "AFTCardAcceptor-6": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-2"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference-2"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/PaymentFacilitator-6"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/ServiceLocationDetails-2"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          },
          "remoteCommerceAcceptorIdentifier": {
            "$ref": "#/components/schemas/RemoteCommerceAcceptorIdentifier"
          }
        }
      },
      "AFTCardAcceptor-8": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-2"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference-2"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/PaymentFacilitator-8"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/ServiceLocationDetails-2"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          },
          "remoteCommerceAcceptorIdentifier": {
            "$ref": "#/components/schemas/RemoteCommerceAcceptorIdentifier"
          }
        }
      },
      "AFTCardAcceptor-7": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-2"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference-2"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/PaymentFacilitator-7"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/ServiceLocationDetails-2"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          },
          "remoteCommerceAcceptorIdentifier": {
            "$ref": "#/components/schemas/RemoteCommerceAcceptorIdentifier"
          }
        }
      },
      "AFTCardAcceptor-9": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-2"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference-2"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/PaymentFacilitator-9"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/ServiceLocationDetails-2"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          },
          "remoteCommerceAcceptorIdentifier": {
            "$ref": "#/components/schemas/RemoteCommerceAcceptorIdentifier"
          }
        }
      },
      "202TransactionStatus-1": {
        "description": "- PENDING: Payout is accepted but has not been acknowledged\n",
        "enum": [
          "PENDING"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "AFTRNetworkResponse": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode"
          },
          "dcapIndicator": {
            "$ref": "#/components/schemas/DcapIndicator"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/AFTRCardResponseTokenData"
          },
          "senderIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "AdjustmentRequestData-10": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "type": "object",
            "properties": {
              "card": {
                "type": "object",
                "properties": {
                  "merchantId": {
                    "type": "string",
                    "description": "Merchant ID for token services",
                    "example": "MERCHANT001"
                  },
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "Account number of the sender's card",
                    "example": "4111111111111111"
                  },
                  "expirationDate": {
                    "$ref": "#/components/schemas/CardExpiryDate"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT",
                      "PCI_TOKEN_REFID"
                    ]
                  }
                }
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-1"
              }
            },
            "description": "Details about the sender"
          },
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/OCTCardAcceptor-9"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO numeric country code",
                "example": "840"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "card": {
                "type": "object",
                "properties": {
                  "posData": {
                    "$ref": "#/components/schemas/PosData-2"
                  }
                },
                "description": "Card-related transaction data"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "schemeIdentifier": {
                "$ref": "#/components/schemas/SchemeIdentifier"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "tokenAssuranceMethod": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "Method used for token assurance",
                "example": "01"
              },
              "businessApplicationId": {
                "$ref": "#/components/schemas/BusinessApplicationId-1"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                }
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "AdjustmentRequestData-12": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/AdjustmentCardAcceptor"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "3-digit numeric or 3-character alpha ISO country code <br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "example": "840 USA"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdjustmentTransactionDetailAdditionalData-1"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "ValidatePayoutAccountOnlyRequest-17": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/ValidateAccountTransactionDetail-23"
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-12"
          }
        ]
      },
      "ValidatePayoutAccountOnlyRequest-16": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-22"
              }
            ],
            "exampleSetFlag": false
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired-1"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-11"
          }
        ],
        "exampleSetFlag": false
      },
      "ValidatePayoutAccountOnlyRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-18"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-9"
          }
        ]
      },
      "ValidatePayoutAccountOnlyRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-16"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-8"
          }
        ]
      },
      "ValidatePayoutAccountOnlyRequest-15": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/ValidateAccountTransactionDetail-19"
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired-1"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-10"
          }
        ],
        "exampleSetFlag": false
      },
      "ValidatePayoutAccountOnlyRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-1"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest"
          }
        ]
      },
      "ValidatePayoutAccountOnlyRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-13"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-7"
          }
        ]
      },
      "ValidatePayoutAccountOnlyRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-12"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToAccountRequest-6"
          }
        ]
      },
      "AccountandWalletPayoutResponse-3": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "AccountandWalletPayoutResponse-4": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "AccountandWalletPayoutResponse-5": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "CompanySenderIdentificationListAccount-2": {
        "description": "Identification list of sender",
        "items": {
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number\n* I-Legal Entity Identifier (LEI) Number. \n\nLegal Entity Identifier is a unique identification of legal entities participating in financial transactions and other official interactions maintained in a global directory by the Global Legal Entity Identifier Foundation (GLEIF). This field can only be used for specific routes (Refer to Visa Direct Endpoint Guide on country approval).Format: [A-Z0-9]{18,18}[0-9]{2,2}. ID issue country must NOT be provided when ID type is LEI.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeAccount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "AccountandWalletPayoutResponse-6": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "CompanySenderIdentificationListAccount-3": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number\n* I-Legal Entity Identifier (LEI) Number. \n\nLegal Entity Identifier is a unique identification of legal entities participating in financial transactions and other official interactions maintained in a global directory by the Global Legal Entity Identifier Foundation (GLEIF). This field can only be used for specific routes (Refer to Visa Direct Endpoint Guide on country approval).Format: [A-Z0-9]{18,18}[0-9]{2,2}. ID issue country must NOT be provided when ID type is LEI.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "OriginatorLedgerNotification": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "minimum": 1,
            "type": "integer",
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nFunding amount should be numeric and  decimal is not allowed. Please refer to Visa Direct Payouts - Endpoint Guide on currency exponent for each market\n\nExample: Currency exponent for USD is 2. If the transaction amount is $100.99, then this field should populate “10099”. If the transaction amount is $100.00 then this field should populate “10000”. Currency exponent for JPY is 0. If the transaction amount is JPY 10,000, then this field should populate “10000”.",
            "example": 4300
          },
          "entryId": {
            "maxLength": 35,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification.  If two entry notifications are received with the same entry id, that means one is a duplicate."
          },
          "accountId": {
            "maxLength": 31,
            "minLength": 12,
            "type": "string",
            "description": "The accountId uniquely identifies an particular account, including currency."
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger.\n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "type": "string",
            "description": "An optional description of the reason why a ledger notification was performed."
          },
          "valueDate": {
            "$ref": "#/components/schemas/Date-1"
          },
          "endToEndId": {
            "maxLength": 35,
            "type": "string",
            "description": "Identifier assigned by the Originating Entity's customer to uniquely identify the transaction\n\nISO20022 field name: Payment Identification - EndtoEnd Identification"
          },
          "bookingDate": {
            "$ref": "#/components/schemas/Date-1"
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "pattern": "^\\d\\d\\d$",
            "type": "string",
            "description": "The 3-digit ISO-4217 code in this field reflects the currency associated to the funding amount\n\nFormat: 3-digit ISO-4217 (numeric) currency code",
            "example": "356"
          },
          "transactionId": {
            "maxLength": 35,
            "type": "string",
            "description": "Identifier assigned by the upstream entity (Visa, in this case0) to uniquely identify the funding transaction"
          },
          "additionalInfo1": {
            "maxLength": 140,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field."
          },
          "additionalInfo2": {
            "maxLength": 140,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field."
          },
          "additionalInfo3": {
            "maxLength": 140,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field."
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "AccountandWalletPayoutResponse-7": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "AccountandWalletPayoutResponse-8": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "CompanySenderIdentificationListAccount-1": {
        "description": "Identification list of sender",
        "items": {
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number\n* I-Legal Entity Identifier (LEI) Number. \n\nLegal Entity Identifier is a unique identification of legal entities participating in financial transactions and other official interactions maintained in a global directory by the Global Legal Entity Identifier Foundation (GLEIF). This field can only be used for specific routes (Refer to Visa Direct Endpoint Guide on country approval).Format: [A-Z0-9]{18,18}[0-9]{2,2}. ID issue country must NOT be provided when ID type is LEI.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeAccount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "AccountandWalletPayoutResponse-9": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "IndividualSenderIdentificationListAccount": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \nValid values : \n* P- Passport \n* D-Driving License\n* N-National Id\n* T-Tax Id\n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "ValidateWalletTransactionDetail": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AFTNetworkResponse": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/AFTResponsePosData"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "dcapIndicator": {
            "$ref": "#/components/schemas/DcapIndicator"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData"
          },
          "riskAssessmentResults": {
            "$ref": "#/components/schemas/RiskAssessmentResults"
          },
          "reimbursementAttribute": {
            "$ref": "#/components/schemas/ReimbursementAttribute"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/AFTResponseCardVerificationResults"
          },
          "recipientIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "ConversionRate": {
        "minimum": 0,
        "exclusiveMinimum": true,
        "type": "number",
        "format": "double",
        "example": 0.07
      },
      "AccountandWalletPayoutResponse-1": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "AccountandWalletPayoutResponse-2": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "CompanyIdTypeAccount": {
        "type": "string",
        "enum": [
          "T",
          "L",
          "I"
        ]
      },
      "EnablerVerificationValue": {
        "maxLength": 5,
        "minLength": 5,
        "type": "string",
        "description": "Enabler verification value"
      },
      "AFTSenderDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "localNameData<br><br>This object is used to provide the sender's local name data. This object is required for transactions where the sender's local name data is required."
              },
              "value": {
                "$ref": "#/components/schemas/SenderLocalNameData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "contactInformationList<br><br>Contact Information list of sender.<br /><br />Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/ContactInformationList"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "ancillarySenderDetails<br><br>Ancillary sender details.<br><br>Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/AncillarySenderDetails"
              }
            }
          }
        ]
      },
      "RecipientIndividual-9": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient, conditionally required when firstName and lastName are not provided",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-7"
          },
          "lastName": {
            "description": "Recipient last name, conditionally required when name is not provided\n\nISO20022 field name: Creditor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name, conditionally required when name is not provided\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          }
        }
      },
      "DigitalAssetRecipientPayoutAddress": {
        "required": [
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2"
              }
            ]
          }
        }
      },
      "RecipientIndividual-7": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient, conditionally required when firstName and lastName are not provided",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-5"
          },
          "lastName": {
            "description": "Recipient last name, conditionally required when name is not provided\n\nISO20022 field name: Creditor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name, conditionally required when name is not provided\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          }
        }
      },
      "UpdatePayoutResponse-5": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CancelCardPayoutResponse-9"
          }
        ]
      },
      "RecipientIndividual-8": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient, conditionally required when firstName and lastName are not provided",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-6"
          },
          "lastName": {
            "description": "Recipient last name, conditionally required when name is not provided\n\nISO20022 field name: Creditor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name, conditionally required when name is not provided\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          }
        }
      },
      "RecipientIndividual-5": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient, conditionally required when firstName and lastName are not provided",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-2"
          },
          "lastName": {
            "description": "Recipient last name, conditionally required when name is not provided\n\nISO20022 field name: Creditor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name, conditionally required when name is not provided\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "RecipientIndividual-6": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-4"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "ValidatePayoutWalletRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest"
          }
        ]
      },
      "RecipientIndividual-3": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-1"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "RecipientIndividual-4": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-3"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "middleName": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MiddleName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "ValidatePayoutWalletRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-2"
          }
        ]
      },
      "RecipientIndividual-1": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-1"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "middleName": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MiddleName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "RecipientIndividual-2": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient, conditionally required when firstName and lastName are not provided",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-2"
          },
          "lastName": {
            "description": "Recipient last name, conditionally required when name is not provided\n\nISO20022 field name: Creditor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name, conditionally required when name is not provided\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          }
        }
      },
      "AFTRecipientDetail-4": {
        "required": [
          "recipientAccountNumber"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RecipientName-1"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType-1"
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAddress-3"
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName-1"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName-1"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName-1"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation-1"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-2"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTRecipientDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth-2"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-5"
          },
          "recipientAccountNumber": {
            "$ref": "#/components/schemas/RecipientAccountNumber-2"
          },
          "recipientReferenceNumber": {
            "$ref": "#/components/schemas/RecipientReferenceNumber-1"
          }
        }
      },
      "SettlementDueBreachedFlexibleSettlementNotification-5": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_DUE_BREACHED"
            ]
          },
          "nextDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SettlementDueBreachedDetails-5"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "UpdatePayoutResponse-3": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CancelCardPayoutResponse-3"
          }
        ]
      },
      "UpdatePayoutResponse-2": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CancelCardPayoutResponse-2"
          }
        ]
      },
      "AFTRecipientDetail-2": {
        "required": [
          "recipientAccountNumber",
          "recipientAccountNumberType"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType"
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAddress-1"
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-3"
          },
          "recipientAccountNumber": {
            "$ref": "#/components/schemas/RecipientAccountNumber"
          },
          "recipientReferenceNumber": {
            "$ref": "#/components/schemas/RecipientReferenceNumber"
          }
        }
      },
      "SettlementDueBreachedFlexibleSettlementNotification-3": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_DUE_BREACHED"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "nextDueDetails": {
            "items": {
              "$ref": "#/components/schemas/SettlementDueBreachedDetails-3"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "UpdatePayoutResponse-1": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CancelCardPayoutResponse-1"
          }
        ]
      },
      "SettlementDueBreachedFlexibleSettlementNotification-4": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_DUE_BREACHED"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "nextDueDetails": {
            "items": {
              "$ref": "#/components/schemas/SettlementDueBreachedDetails-4"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "NetworkId-1": {
        "type": "integer",
        "description": "Conditional\n\nThis contains a code that identifies the network on which the transaction was processed. Refer to <a href=\"https://developer.visa.com/request_response_codes#network_id_and_sharing_group_code\">Network ID</a>\n\nNote: This field is returned only if it is anything other than networkId value 2. Supported only in US for domestic transactions\n"
      },
      "VerificationCardHolder-1": {
        "type": "object",
        "properties": {
          "name": {
            "required": [
              "lastName"
            ],
            "type": "object",
            "properties": {
              "lastName": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Last name of account or entity",
                "example": "Smith"
              },
              "firstName": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "First name of account or entity",
                "example": "John"
              },
              "middleName": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Middle name of account or entity",
                "example": "Robert"
              }
            },
            "description": "Card holder name to be validated with issuer"
          },
          "address": {
            "required": [
              "postalCode"
            ],
            "type": "object",
            "properties": {
              "postalCode": {
                "maxLength": 9,
                "minLength": 1,
                "type": "string",
                "description": "Postal Code provided by the account holder",
                "example": "94105"
              },
              "addressLine1": {
                "maxLength": 40,
                "minLength": 1,
                "type": "string",
                "description": "Address provided by the account holder",
                "example": "123 Main Street"
              }
            },
            "description": "Card holder address to be validated with issuer"
          },
          "ownerType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Account owner type to identify if the name belongs to the primary or secondary account owner",
            "example": "01"
          },
          "phoneNumber": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string",
            "description": "Card holder Phone Number verified with the issuer",
            "example": "+14155551234"
          },
          "emailAddress": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Card holder Email Address verified with the issuer",
            "example": "john.smith@example.com"
          },
          "identificationList": {
            "type": "array",
            "description": "Used to validate the cardholder identity. Supported only in the LAC region. API calls have to be MLE enabled to use this.",
            "items": {
              "required": [
                "idNumber",
                "idType"
              ],
              "type": "object",
              "properties": {
                "idType": {
                  "type": "string",
                  "description": "Type of identification",
                  "example": "PASN",
                  "enum": [
                    "NTID",
                    "PASN",
                    "DRLN",
                    "TXIN"
                  ]
                },
                "idNumber": {
                  "maxLength": 35,
                  "minLength": 1,
                  "type": "string",
                  "description": "The identification value",
                  "example": "P1234567"
                }
              }
            }
          }
        },
        "description": "Card holder details for Verification check"
      },
      "NetworkId-2": {
        "type": "number",
        "description": "<b>Conditional</b><br><br>\nIdentifies the network through which the transaction was processed. Refer to <a href=\"/request_response_codes#network_id_and_sharing_group_code\">Network ID</a><br><br>\n<b>Note:</b> This field is returned only if it is anything other than networkId value 2.<br><br>\nSupported only in:\n<ul>\n  <li>US for domestic transactions.</li>\n  <li>Cross border transactions involving UnionPay International Money Express.</li>\n</ul>",
        "example": 2
      },
      "BankName-1": {
        "maxLength": 50,
        "minLength": 1,
        "example": "Bank of America",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "ContactNumber": {
        "maxLength": 16,
        "minLength": 1,
        "pattern": "^\\+[1-9]\\d{1,14}$",
        "type": "string",
        "description": "Contact phone number\n+ symbol followed by digits, no other symbols, e.g. +447700123456 \n(note, refer ISO spec E.164)\n"
      },
      "SettlementServiceFlag": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Flag indicating the settlement service used for this transaction",
        "example": "1"
      },
      "AccountWalletRecipientIdentificationList-1": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountWalletIdType-1"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "IndividualsName": {
        "maxLength": 70,
        "minLength": 3,
        "type": "string",
        "description": "Full name of Individual",
        "example": "Visa"
      },
      "AcnvPaymentCredentialReference": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID",
              "PHONE",
              "EMAIL",
              "DIRECTORY_ALIASID",
              "PAYMENT_CREDENTIAL_ID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br> For \"PAYMENT_CREDENTIAL_ID\" length is 1-36 characters. <br>For \"PHONE\", \"EMAIL\", \"DIRECTORY_ALIASID\", length is 1-128 characters. <br> <br> If phone number is used for alias, this should be provided in accordance with ITU-T E.164 (2010) number structure. Please note that in the E.164 format, the '+' sign is not included. Below are some examples of phone numbers with different country codes - <br><table><thead><tr><th>Country</th><th>Country Code</th><th>Examples</th></tr></thead><tbody><tr><td>United States</td><td>1</td><td>1650xxxxxxx</td></tr><tr><td>Ukraine</td><td>380</td><td>38067xxxxxxx</td></tr><tr><td>Belarus</td><td>375</td><td>37529xxxxxxx</td></tr><tr><td>Kazakhstan</td><td>7</td><td>7701xxxxxxx</td></tr><tr><td>United Kingdom</td><td>44</td><td>4478xxxxxxxx</td></tr><tr><td>Singapore</td><td>65</td><td>659xxxxxxx</td></tr><tr><td>Hong Kong</td><td>852</td><td>8529xxxxxxx</td></tr><tr><td>Kenya</td><td>254</td><td>254701xxxxxx</td></tr></tbody></table>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "AuthenticationData": {
            "$ref": "#/components/schemas/AcnvAuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData"
          }
        },
        "description": "External reference to a payment credential"
      },
      "ValidateAccountPayoutResponse-16": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-8"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-14"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-17"
          }
        ]
      },
      "CardPayoutRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest"
          }
        ]
      },
      "AdjustmentCardAcceptor": {
        "required": [
          "id",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          }
        },
        "description": "Card acceptor details for Adjustment Transaction"
      },
      "ValidateAccountPayoutResponse-14": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-6"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse-12"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-12"
          }
        ],
        "exampleSetFlag": false
      },
      "PayoutResponse-10": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-3"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-6"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "ValidateAccountPayoutResponse-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-7"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-15"
          }
        ],
        "exampleSetFlag": false
      },
      "TrustedMerchantExemptionIndicator": {
        "type": "string",
        "description": "Trusted merchant exemption indicator",
        "enum": [
          "true",
          "false"
        ]
      },
      "UnspecifiedTypeSenderIdentificationListAccountWallet-1": {
        "description": "Identification list of sender",
        "items": {
          "properties": {
            "idType": {
              "$ref": "#/components/schemas/UnspecifiedIdTypeAccount-1"
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "AccountId-1": {
        "maxLength": 31,
        "minLength": 12,
        "description": "The accountId uniquely identifies the ledger account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "UnspecifiedTypeSenderIdentificationListAccountWallet-2": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "$ref": "#/components/schemas/UnspecifiedIdTypeAccount"
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "ChipTransactionIndicator": {
        "maximum": 9,
        "minimum": 0,
        "type": "number",
        "description": "Chip transaction indicator"
      },
      "ClientDrivenConditionsAndFields": {
        "required": [
          "condition",
          "presence"
        ],
        "type": "object",
        "properties": {
          "fields": {
            "type": "array",
            "description": "At least one of the 'fields'/'oneOfFields'/'anyOfFields' groups will be populated.\n",
            "items": {
              "$ref": "#/components/schemas/FieldClientDriven"
            }
          },
          "presence": {
            "type": "string",
            "enum": [
              "required",
              "recommended",
              "conditional",
              "optional"
            ]
          },
          "condition": {
            "type": "string",
            "description": "This is a client defined condition ID. Note that, unlike the \"condition\" parameter used in the rules{} section, this condition-id does not refer to any conditions defined within the conditions[] array."
          },
          "anyOfFields": {
            "$ref": "#/components/schemas/OneOfFieldsClientDriven"
          },
          "description": {
            "type": "string",
            "description": "A brief description of the condition."
          },
          "oneOfFields": {
            "$ref": "#/components/schemas/OneOfFieldsClientDriven"
          }
        }
      },
      "FlexibleAmountUtilized": {
        "type": "number",
        "description": "Amount of liquidity that has been utilized.",
        "format": "double"
      },
      "SettlementDueBreachedFlexibleSettlementNotification-1": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_DUE_BREACHED"
            ]
          },
          "nextDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SettlementDueBreachedDetails-1"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "ReplacementCardExpirationDate-1": {
        "maxLength": 7,
        "minLength": 7,
        "type": "string",
        "description": "Specifies the expiration date of the replacement card provided by Visa Account Updater (VAU).<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must represent a valid month and year.</li>\n</ul>",
        "example": "2025-12"
      },
      "AFTRecipientDetail-1": {
        "required": [
          "recipientAccountNumber",
          "recipientAccountNumberType"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType"
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAddress-1"
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth-1"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-2"
          },
          "recipientAccountNumber": {
            "$ref": "#/components/schemas/RecipientAccountNumber"
          },
          "recipientReferenceNumber": {
            "$ref": "#/components/schemas/RecipientReferenceNumber"
          }
        }
      },
      "SettlementDueBreachedFlexibleSettlementNotification-2": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_DUE_BREACHED"
            ]
          },
          "nextDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SettlementDueBreachedDetails-2"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "ValidatePayoutWalletRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-3"
          }
        ]
      },
      "ValidatePayoutWalletRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-3"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-4"
          }
        ]
      },
      "ValidatePayoutWalletRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-3"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-5"
          }
        ]
      },
      "ValidateAccountPayoutResponse-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse-5"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-3"
          }
        ]
      },
      "ValidatePayoutWalletRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-6"
          }
        ]
      },
      "ValidatePayoutWalletRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-7"
          }
        ]
      },
      "VisaDiscretionaryData": {
        "type": "object",
        "properties": {
          "derivationKeyIndexVIS": {
            "maxLength": 4,
            "minLength": 1,
            "type": "string",
            "description": "Derivation key index VIS"
          },
          "cardVerificationResultsVIS": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Card verification results VIS"
          },
          "cryptogramVersionNumberVIS": {
            "maxLength": 4,
            "minLength": 1,
            "type": "string",
            "description": "Cryptogram version number VIS"
          }
        }
      },
      "ValidatePayoutWalletRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-8"
          }
        ]
      },
      "ValidatePayoutWalletRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-9"
          }
        ]
      },
      "WalletRecipientIsCompany": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet"
              }
            ]
          }
        }
      },
      "AFTRequestData-3": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-3"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-2"
          }
        }
      },
      "AFTRequestData-4": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-4"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-4"
          }
        }
      },
      "AFTRequestData-5": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-5"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-2"
          }
        }
      },
      "AdjustPayoutRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAdjustmentRequest"
          }
        ]
      },
      "AFTRequestData-6": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-6"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-6"
          }
        }
      },
      "AFTRequestData-7": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-7"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-2"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-2"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-7"
          }
        }
      },
      "AFTRequestData-8": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-8"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-3"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-3"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-7"
          }
        }
      },
      "DigitalAssetSenderIsCompany": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          }
        }
      },
      "AFTRequestData-9": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-9"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-4"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-4"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-9"
          }
        }
      },
      "RecipientLastName": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Recipient last name. Conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters. Must not contain exclusively numeric characters. Must not contain special symbols. ISO20022 field name: Creditor Name.\n",
        "example": "Doe"
      },
      "PushCard": {
        "type": "object",
        "properties": {
          "vauFlag": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "If present, a valid value is required. Spaces or special characters are not allowed. Possible values are : Y (will cause VAU to be performed)\n\nISO20022 field name: N/A\n"
          },
          "accountType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.\n\n00-Not applicable\n\n10-Saving account\n\n20-Checking account\n\n30-Credit card account\n\n40-Universal account\n\nDefault is set to \"00\" if not provided.\n",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "pattern": "^\\d*$",
            "type": "string",
            "description": "Recipient primary account number, or token account number.\n\nConditional\nRequired if paymentCredentialReference' is not provided in a request\n\nISO20022 field name: N/A\n"
          },
          "expirationDate": {
            "maxLength": 7,
            "minLength": 7,
            "pattern": "YYYY-MM",
            "type": "string",
            "description": "Conditional\nThis field contains the expiration date for the recipient's primary account number or token in recipientPrimaryAccountNumber.\nNote: Visa requires expiration date to be present in all OCTs destined to U.S. issuers\nFormat: YYYY-MM\nExample: 2021-10\n\nISO20022 field name: N/A\n",
            "example": "2022-01"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/PaymentCredentialReference-1"
          }
        },
        "description": "Conditional\nIf 'payoutMethod' is 'C', this object is conditionally required for card push transaction\n"
      },
      "AccountNumberType": {
        "type": "string",
        "description": "Account type. Possible values are DEFAULT, IBAN\n",
        "enum": [
          "DEFAULT",
          "IBAN"
        ]
      },
      "PullFundsInitNotification": {
        "required": [
          "accountId",
          "eventType",
          "fundingDetails",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "PULL_FUNDS_INITIATED"
            ]
          },
          "fundingDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FundingDetails"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "SenderTransactorDetail": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIndividual"
          },
          {
            "$ref": "#/components/schemas/SenderCompany"
          }
        ]
      },
      "SenderReferenceNumber": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "Conditional: If the sender intends to fund the transaction with card or wallet and not a bank account, then a reference number unique to the sender is required. This field is required if senderAccountNumber is not sent. Client should not send any card PANs in this field for payout.\n",
        "example": "John"
      },
      "CardTransactionDetail": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail"
          }
        ]
      },
      "PayoutNotificationRequestStatus": {
        "type": "string",
        "description": "Status of the transaction being queried\n\nISO20022 field name: Transaction Status\n"
      },
      "TimestampType": {
        "type": "string",
        "description": "ISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n\nISO20022 field name: Transaction Information And Status - Message Creation Date Time\n",
        "format": "date-time"
      },
      "WalletTransactionDetail-15": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-2"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-4"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AFTRequestData-1": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-1"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-1"
          }
        }
      },
      "WalletTransactionDetail-12": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AFTRequestData-2": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/AFTSenderDetail-2"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/AFTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTTransactionDetail-2"
          }
        }
      },
      "WalletTransactionDetail-13": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-3"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "LocalSchemeTransactionId-1": {
        "maxLength": 70,
        "minLength": 1,
        "description": "Optional.\nApplicable for statuses PAYMENT_SENT, PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK, when available.\n",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "ServiceLocationCountry": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "ISO Country Code of the service location",
        "example": "USA"
      },
      "SettlementOverdueDetails-4": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact-1"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue-1"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SettlementOverdueDetails-5": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "totalAmountOverdue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/TotalAmountOverdueSettlementDueBreached"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen"
          }
        }
      },
      "DcapIndicator": {
        "maxLength": 1,
        "type": "string",
        "description": "Contains an indicator that identifies if the merchant has used the eligible authentication or data sharing method and provided the required data elements.<br/>The valid value is <b>1</b> (VDCAP)."
      },
      "SettlementOverdueDetails-2": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "totalAmountOverdue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/SettlementOverdueDetailsTotalAmountOverdue"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen"
          }
        }
      },
      "DigitalAssetSenderIsIndividual": {
        "required": [
          "firstName",
          "lastName",
          "type"
        ],
        "properties": {
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          }
        }
      },
      "SettlementOverdueDetails-3": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "totalAmountOverdue",
          "vplContact"
        ],
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact-1"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue-1"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/TotalAmountOverdueSettlementDueBreached-1"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ErrorResponseWithKey-11": {
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-5"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "Info": {
        "required": [
          "title",
          "version",
          "versionDate"
        ],
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "The title indicating the country of the metadata response"
          },
          "version": {
            "type": "string",
            "description": "This is the version of the metadata response. \nIt is in the format \\<major-version-number\\>.\\<minor-version-number\\>.\\<minor-sub-version-number\\>.\n\n* minor-sub-version-number updates are documentation updates only and should not influence the processing of a payout transaction. Example: changes to the description of Purpose of Payment code.\n\n* minor-version-number updates indicate backward compatible changes in the route validation rules on a payout transaction. Example: addition of a new Purpose of Payment code.\n\n* major-version-number updates indicate backward incompatible changes in the route validation rules on a payout transaction. Such changes are usually regulatory in nature or due to partner migration on Visa's backend. Example: Purpose of Payment code changing from a \"recommended\" to a \"required\" field.\n"
          },
          "description": {
            "type": "string"
          },
          "versionDate": {
            "type": "string",
            "format": "date"
          }
        }
      },
      "ErrorResponseWithKey-10": {
        "properties": {
          "errorResponse": {
            "$ref": "#/components/schemas/ErrorResponse-5"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountNumber": {
        "maxLength": 254,
        "minLength": 1,
        "type": "string",
        "description": "When present, this field contains recipient’s account number or alias at the bank.",
        "example": "3012345678901432"
      },
      "ErrorResponseWithKey-12": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "$ref": "#/components/schemas/ErrorResponse"
          }
        }
      },
      "TransactionalStructuredRemittance": {
        "maxItems": 999,
        "type": "array",
        "items": {
          "required": [
            "amount",
            "amountCurrencyCode"
          ],
          "type": "object",
          "properties": {
            "amount": {
              "description": "This is the amount of money remitted for the referred document. Note that this field accepts signed amounts. A positive amount value indicates amounts flowing in the direction of the payout transaction, and due to the recipient . A negative amount value indicates the amount due back to the sender, i.e. a reduction in the total remitted amount. An amount value without the explicit mention of sign would be assumed positive.\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/SignedAmount"
                }
              ]
            },
            "taxAmount": {
              "example": 1.23,
              "allOf": [
                {
                  "$ref": "#/components/schemas/Amount"
                }
              ]
            },
            "taxCurrencyCode": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCurrencyCode"
                }
              ]
            },
            "creditorReference": {
              "required": [
                "code",
                "number"
              ],
              "type": "object",
              "properties": {
                "code": {
                  "maxLength": 4,
                  "minLength": 4,
                  "type": "string",
                  "description": "Refer to PACS.008 SRI Creditor Reference Type codes",
                  "example": "SCOR",
                  "enum": [
                    "RADM",
                    "RPIN",
                    "FXDR",
                    "DISP",
                    "PUOR",
                    "SCOR"
                  ]
                },
                "number": {
                  "maxLength": 35,
                  "minLength": 1,
                  "type": "string",
                  "example": "TLD1215"
                }
              }
            },
            "amountCurrencyCode": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCurrencyCode"
                }
              ]
            },
            "referredDocumentInformation": {
              "maxItems": 1,
              "type": "array",
              "items": {
                "required": [
                  "code",
                  "number"
                ],
                "type": "object",
                "properties": {
                  "code": {
                    "maxLength": 4,
                    "minLength": 4,
                    "type": "string",
                    "description": "Refer to PACS.008 SRI Referred Document Type codes. Only 'CINV' and 'CREN' are supported values.",
                    "example": "CINV",
                    "enum": [
                      "MSIN",
                      "CNFA",
                      "DNFA",
                      "CINV",
                      "CREN",
                      "DEBN",
                      "HIRI",
                      "SBIN",
                      "CMCN",
                      "SOAC",
                      "DISP",
                      "BOLD",
                      "VCHR",
                      "AROI",
                      "TSUT",
                      "PUOR"
                    ]
                  },
                  "number": {
                    "maxLength": 35,
                    "minLength": 1,
                    "type": "string",
                    "example": "24895544"
                  },
                  "relatedDate": {
                    "type": "string",
                    "format": "date"
                  }
                }
              }
            }
          }
        }
      },
      "CurrentStatus-1": {
        "description": "Indicates the current status of the currency. Only two values are allowed <br />\nENABLED – payouts in this currency are allowed. <br />\nDISABLED – payouts in this currency are not allowed.\n",
        "example": "ENABLED",
        "enum": [
          "ENABLED",
          "DISABLED"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "ValidPayoutResponse": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID - Visa's validation succeeds.\n",
            "enum": [
              "VALID"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "SettlementDueBreachedDetails": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen"
          }
        }
      },
      "SettlementOverdueDetails-1": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "totalAmountOverdue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/TotalAmountOverdueSettlementDueBreached"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen"
          }
        }
      },
      "DigitalAssetSenderTransactorDetailWithID-2": {
        "allOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetSenderIsCompany-2"
          }
        ],
        "exampleSetFlag": false
      },
      "DigitalAssetSenderTransactorDetailWithID-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetSenderIsIndividual-1"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetSenderIsCompany-1"
          }
        ],
        "exampleSetFlag": false
      },
      "DigitalAssetSenderTransactorDetailWithID-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetSenderIsIndividual"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetSenderIsCompany-3"
          }
        ]
      },
      "OCTTransactionPosData": {
        "type": "object",
        "properties": {
          "pinData": {
            "required": [
              "pinBlockFormatCode",
              "pinDataBlock"
            ],
            "type": "object",
            "properties": {
              "pinDataBlock": {
                "maxLength": 8,
                "minLength": 8,
                "type": "string",
                "description": "PIN data block",
                "format": "binary"
              },
              "zoneKeyIndex": {
                "maximum": 99,
                "minimum": 0,
                "type": "integer",
                "description": "Zone key index"
              },
              "pinBlockFormatCode": {
                "type": "integer",
                "description": "PIN block format code"
              }
            }
          },
          "panEntryMode": {
            "$ref": "#/components/schemas/PanEntryMode"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "chipConditionCode": {
            "$ref": "#/components/schemas/ChipConditionCode"
          },
          "magneticStripeData": {
            "type": "object",
            "properties": {
              "track1Data": {
                "maxLength": 76,
                "minLength": 1,
                "type": "string",
                "description": "Track 1 data from magnetic stripe"
              },
              "track2Data": {
                "maxLength": 19,
                "minLength": 1,
                "type": "string",
                "description": "Track 2 data from magnetic stripe",
                "format": "binary"
              }
            }
          },
          "chipTransactionIndicator": {
            "$ref": "#/components/schemas/ChipTransactionIndicator"
          },
          "pointOfServiceCapability": {
            "required": [
              "terminalEntryCapability",
              "terminalType"
            ],
            "type": "object",
            "properties": {
              "terminalType": {
                "maximum": 9,
                "minimum": 0,
                "type": "integer",
                "description": "Terminal type"
              },
              "terminalEntryCapability": {
                "maximum": 9,
                "minimum": 0,
                "type": "integer",
                "description": "Terminal entry capability"
              }
            }
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant"
          },
          "chipAuthenticationReliabilityIndicator": {
            "$ref": "#/components/schemas/ChipAuthenticationReliabilityIndicator"
          }
        },
        "description": "Point of Service data for Original Credit Transaction"
      },
      "AccountRecipientIsCompany": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount"
              }
            ]
          }
        }
      },
      "AccountVerifyResponse-6": {
        "required": [
          "clientVerificationReference",
          "verificationId",
          "verificationStatus"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "verificationStatus": {
            "type": "string",
            "description": "Provides the status of verification request.\n* COMPLETED - Request was completed and result is available.\n* NOT_COMPLETED - Service Provider not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "accountVerificationDetail": {
            "$ref": "#/components/schemas/AccountVerificationDetail-1"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference"
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED"
      },
      "CustomProgramData-8": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "merchantReference": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator"
          },
          "pointOfServiceData": {
            "$ref": "#/components/schemas/PointOfServiceData"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "CustomProgramData-9": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator-1"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "CardAcceptorId-1": {
        "maxLength": 15,
        "minLength": 1,
        "type": "string",
        "description": "An alphanumeric field that uniquely identifies the Originating Entity for Push to Account transactions. The Orignating Entity should populate Card Acceptor Terminal ID (CAID)  for Push to Card transactions. \n\nISO20022 field name: Debtor - Originating Entity Identification\n",
        "example": "1234567890"
      },
      "PayoutAdjustmentRequest-1": {
        "required": [
          "amount",
          "clientReferenceId",
          "initiatingPartyId",
          "payoutId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "The amount of the transaction, inclusive of all fees assessed for the transaction, including currency conversion fees. Minimum: 0, Maximum: 999999999.999, Allowed fractional digits: 3.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "payoutId": {
            "description": "Clients shall send the Visa transaction identifier returned in the response of PullFundsTransactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "adjustmentType": {
            "type": "string",
            "description": "Adjustment type to indicate the type of adjustment. Default:pullTransferCredit\n",
            "enum": [
              "pullTransferCredit",
              "pushTransferDebit",
              "pushtransferCredit",
              "salesTaxRebateReversal"
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "customProgramData": {
            "type": "object",
            "properties": {
              "originator": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "state": {
                        "maxLength": 2,
                        "minLength": 1,
                        "type": "string",
                        "description": "Should match the state information submitted in the original PullFundsTransactions\n"
                      },
                      "county": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "Should match the county information submitted in the original PullFundsTransactions.\n"
                      },
                      "zipCode": {
                        "maxLength": 9,
                        "minLength": 5,
                        "type": "string",
                        "description": "Should match the zip code information submitted in the original PullFundsTransactions.\n"
                      },
                      "addressLine": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "Should match the country information submitted in the original PullFundsTransactions.\n"
                      }
                    },
                    "description": "Address details.\n"
                  },
                  "originatorId": {
                    "maxLength": 15,
                    "minLength": 1,
                    "type": "string",
                    "description": "A unique identifier for the card acceptor (Visa Direct merchant).\n"
                  },
                  "originatorName": {
                    "maxLength": 25,
                    "minLength": 1,
                    "type": "string",
                    "description": "Card acceptor name as it is sent in the original PullFundsTransactions.\n"
                  },
                  "originatorTerminalId": {
                    "maxLength": 8,
                    "minLength": 1,
                    "type": "string",
                    "description": "The identifier for the terminal at a card acceptor location.\n"
                  }
                }
              },
              "merchantReference": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
              },
              "originatorEnablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
              }
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "localTransactionDateTime": {
            "description": "This field contains the local date and time when the Adjustment transaction is submitted. Format: YYYY-MM-DDThh:mm:ss.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "rewardProgramIdentificationCode": {
            "maxLength": 6,
            "minLength": 6,
            "type": "string",
            "description": "Used to identify the reward program.\n"
          }
        }
      },
      "CardAcceptorId-2": {
        "maxLength": 15,
        "minLength": 1,
        "type": "string",
        "description": "Uniquely identifies the card acceptor (merchant or entity) in the transaction. This ID ensures accurate routing and processing for the correct merchant. Format:<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Allowed Characters: Alphanumeric (letters and numbers), may include standard punctuation if required by merchant ID format.</li>\n  <li>Should remain consistent across all transactions for the same merchant.</li>\n  <li>Avoid spaces unless explicitly allowed by the API specification.</li>\n</ul>",
        "example": "MERCHANT12345"
      },
      "SenderAdditionalData": {
        "type": "array",
        "description": "Additional fields that are needed in order to complete the additional screening. The additional fields can be included as name value pairs (Field name, Field value)",
        "items": {
          "required": [
            "name",
            "value"
          ],
          "type": "object",
          "properties": {
            "name": {
              "description": "Originating Entity to send additional sender information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the name component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataName"
                }
              ]
            },
            "value": {
              "description": "Originating Entity to send additional sender information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the value  component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataValue"
                }
              ]
            }
          }
        }
      },
      "CustomProgramData-2": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "merchantReference": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator"
          },
          "pointOfServiceData": {
            "$ref": "#/components/schemas/PointOfServiceData"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "CustomProgramData-3": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "merchantReference": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator"
          },
          "pointOfServiceData": {
            "$ref": "#/components/schemas/PointOfServiceData"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "CustomProgramData-1": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "merchantReference": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator"
          },
          "pointOfServiceData": {
            "$ref": "#/components/schemas/PointOfServiceData"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "CustomProgramData-6": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "merchantReference": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator"
          },
          "pointOfServiceData": {
            "$ref": "#/components/schemas/PointOfServiceData"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "CustomProgramData-7": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "merchantReference": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator"
          },
          "pointOfServiceData": {
            "$ref": "#/components/schemas/PointOfServiceData"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "CustomProgramData-4": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "merchantReference": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator"
          },
          "pointOfServiceData": {
            "$ref": "#/components/schemas/PointOfServiceData"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "CustomProgramData-5": {
        "type": "object",
        "properties": {
          "originator": {
            "type": "object",
            "properties": {
              "taxId": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the identifier of the acceptor issued by a taxation authority.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string"
                  },
                  "zipCode": {
                    "maxLength": 9,
                    "minLength": 1,
                    "type": "string",
                    "description": "Zip/Postal code of the Merchant/Originator.\n\nRequired if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.\n\nNote: For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters.\n"
                  },
                  "addressLine": {
                    "maxLength": 99,
                    "minLength": 1,
                    "type": "string",
                    "description": "Address Line\n"
                  }
                }
              },
              "urlAddress": {
                "maxLength": 256,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the web address of the acceptor.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "partnerIdCode": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string",
                "description": "This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "subMerchantId": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string",
                "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved or for all MasterCard transactions.\n"
              },
              "contactInformation": {
                "type": "object",
                "properties": {
                  "contactNumber": {
                    "type": "object",
                    "properties": {
                      "business": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "additional": {
                        "maxLength": 256,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains additional information for contacting the acceptor, such as an additional phone number or a contact name.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "customerService": {
                        "maxLength": 16,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the customer service phone number of the acceptor that should be used for transaction inquiries.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      }
                    }
                  }
                }
              },
              "serviceLocationDetail": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "object",
                    "properties": {
                      "city": {
                        "maxLength": 50,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the name of the city where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "state": {
                        "maxLength": 3,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the ISO code of the State/Province or country subdivision where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "postalCode": {
                        "maxLength": 10,
                        "minLength": 1,
                        "type": "string",
                        "description": "This field contains the postal code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n"
                      },
                      "countryCode": {
                        "description": "This field contains the 3 character alpha ISO country code of the country where the cardholder received the services.\n\nThis field is conditionally required for all MasterCard transactions.\n\nRefer to ISO Codes\n",
                        "allOf": [
                          {
                            "$ref": "#/components/schemas/AlphaCountryCode"
                          }
                        ]
                      }
                    }
                  }
                }
              },
              "independentSalesOrganizationId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.\n\nThis field is conditionally required for all MasterCard transactions.\n"
              },
              "mastercardTransactionGatewayId": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string",
                "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
              }
            }
          },
          "originatorId": {
            "$ref": "#/components/schemas/OriginatorId"
          },
          "originatorName": {
            "$ref": "#/components/schemas/OriginatorName"
          },
          "sharingGroupCode": {
            "$ref": "#/components/schemas/SharingGroupCode-1"
          },
          "merchantReference": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant account key value for Argentina domestic purchase (POS) transactions.\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
          },
          "originatorAddress": {
            "$ref": "#/components/schemas/OriginatorAddress"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/CardPaymentFacilitator"
          },
          "pointOfServiceData": {
            "$ref": "#/components/schemas/PointOfServiceData"
          },
          "merchantCategoryCode": {
            "maxLength": 4,
            "minLength": 4,
            "type": "string",
            "description": "Code describing the merchant's type of business product or service known as the merchant category code (MCC). Codes are listed in the Visa Core Rules and Visa Product and Service Rules.\n\nISO20022 field name: Debtor Other Identification\n",
            "example": "1234"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VMID"
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-1"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Originators may choose to specify any or all of the following optional parameters to receive as part of the API response.\n\nE.g. Originators may specify comma-separated, optional parameters such as optionalResponseParameters (motoECIIndicator), if they want to receive motoECIIndicator in the API response.\n\nmotoECIIndicator: Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\n\nRefer to Moto ECI Codes\n\nE.g. optionalResponseParameters (motoECIIndicator)\n"
          },
          "originatorLegalBusinessName": {
            "$ref": "#/components/schemas/OriginatorLegalName"
          }
        }
      },
      "industryCode": {
        "maxLength": 4,
        "minLength": 3,
        "description": "Code describing the sender's type of industry or service. Only required in the following use case: Visa Direct for Wallet Business to Consumer payments. See the Wallet Payments Endpoint Guide for further details.\n",
        "example": "1400",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "VerificationTransactionDetail-2": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-1"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "VerificationTransactionDetail-1": {
        "required": [
          "card",
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          }
        },
        "description": "Transaction details for Verification check"
      },
      "DigitalAssetLedgerCurrencyCode-1": {
        "description": "The cryptocurrency or fiat currency code",
        "example": "USDC",
        "enum": [
          "USDC",
          "PYUSD"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "VerificationTransactionDetail-4": {
        "required": [
          "card",
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          }
        },
        "description": "Transaction details for Verification check"
      },
      "MexicoNationalServiceData-1": {
        "required": [
          "country"
        ],
        "type": "object",
        "properties": {
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO 3166-1 alpha-3 country code for national service data",
            "example": "MEX"
          },
          "irfType": {
            "maxLength": 1,
            "minLength": 1,
            "type": "number",
            "format": "string"
          },
          "accountType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "number",
            "format": "string"
          },
          "irfCategoryCode": {
            "maxLength": 2,
            "minLength": 1,
            "type": "number",
            "format": "string"
          },
          "merchantFiscalId": {
            "maxLength": 13,
            "minLength": 1,
            "type": "number",
            "format": "string"
          },
          "reimbursementFee": {
            "$ref": "#/components/schemas/ReimbursementFee"
          },
          "reimbursementFeeTax": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "AccountVerifyResponse-1": {
        "required": [
          "clientVerificationReference",
          "verificationId",
          "verificationStatus"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "verificationStatus": {
            "type": "string",
            "description": "Provides the status of verification request.\n* COMPLETED - Request was completed and result is available.\n* NOT_COMPLETED - Service Provider not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "verificationDetails": {
            "required": [
              "code",
              "message"
            ],
            "type": "object",
            "properties": {
              "code": {
                "type": "integer",
                "description": "Response/error code to convey to client what went wrong in case of COMPLETED and account not matched and NOT_COMPLETED as well.",
                "example": 2100
              },
              "message": {
                "type": "string",
                "description": "Message corresponding to the above code.",
                "example": "Account identifier does not match"
              },
              "location": {
                "type": "string",
                "description": "To share the location.",
                "nullable": true,
                "example": "Server A"
              }
            }
          },
          "accountVerificationDetail": {
            "required": [
              "accountIdentifierMatch"
            ],
            "type": "object",
            "properties": {
              "nameMatch": {
                "type": "string",
                "description": "Indicates if recipient bank name is a match.",
                "nullable": true,
                "example": "Strong_Match",
                "enum": [
                  "Strong_Match",
                  "Partial_Match",
                  "No_Match"
                ]
              },
              "currencyCodes": {
                "type": "array",
                "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.\n",
                "example": [
                  "USD",
                  "GBP",
                  "EUR"
                ],
                "items": {
                  "$ref": "#/components/schemas/AlphaCurrencyCode"
                }
              },
              "bankAccountName": {
                "type": "string",
                "description": "Field to indicate the actual name of the accountholder (if provided by account verification service provider).\n",
                "nullable": true,
                "example": "John Doe"
              },
              "accountIdentifierMatch": {
                "type": "string",
                "description": "Indicates if the account identifier provided matches the recipient's bank account identifier found.\n- YES: Match\n- NO: No Match\n"
              },
              "bankAccountNameTranslation": {
                "type": "string",
                "description": "Account HolderName Translated from the source language to english.\n",
                "example": "Wang Li"
              }
            }
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED"
      },
      "VerificationTransactionDetail-3": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-1"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "AccountVerifyResponse-2": {
        "required": [
          "clientVerificationReference",
          "verificationId",
          "verificationStatus"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "verificationStatus": {
            "type": "string",
            "description": "Provides the status of verification request.\n* COMPLETED - Request was completed and result is available.\n* NOT_COMPLETED - Service Provider not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "verificationDetails": {
            "required": [
              "code",
              "message"
            ],
            "type": "object",
            "properties": {
              "code": {
                "type": "integer",
                "description": "Response/error code to convey to client what went wrong in case of COMPLETED and account not matched and NOT_COMPLETED as well.",
                "example": 2100
              },
              "message": {
                "type": "string",
                "description": "Message corresponding to the above code.",
                "example": "Account identifier does not match"
              },
              "location": {
                "type": "string",
                "description": "To share the location.",
                "nullable": true,
                "example": "Server A"
              }
            }
          },
          "accountVerificationDetail": {
            "required": [
              "accountIdentifierMatch"
            ],
            "type": "object",
            "properties": {
              "nameMatch": {
                "type": "string",
                "description": "Indicates if recipient bank name is a match.",
                "nullable": true,
                "example": "Strong_Match",
                "enum": [
                  "Strong_Match",
                  "Partial_Match",
                  "No_Match"
                ]
              },
              "currencyCodes": {
                "type": "array",
                "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.\n",
                "example": [
                  "USD",
                  "GBP",
                  "EUR"
                ],
                "items": {
                  "$ref": "#/components/schemas/AlphaCurrencyCode"
                }
              },
              "bankAccountName": {
                "type": "string",
                "description": "Field to indicate the actual name of the accountholder (if provided by account verification service provider).\n",
                "nullable": true,
                "example": "John Doe"
              },
              "accountIdentifierMatch": {
                "type": "string",
                "description": "Indicates if the account identifier provided matches the recipient's bank account identifier found.\n- YES: Match\n- NO: No Match\n"
              },
              "bankAccountNameTranslation": {
                "type": "string",
                "description": "Account HolderName Translated from the source language to english.\n",
                "example": "Wang Li"
              }
            }
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED"
      },
      "VerificationTransactionDetail-6": {
        "required": [
          "card",
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          }
        },
        "description": "Transaction details for Verification check"
      },
      "VerificationTransactionDetail-5": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-2"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "AccountVerifyResponse-3": {
        "required": [
          "verificationId",
          "verificationStatus"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "verificationStatus": {
            "type": "string",
            "description": "Provides the status of verification request.\n* COMPLETED - Request was completed and result is available.Indicates if the account identifier provided matches the recipient's bank account identifier found.\n* NOT_COMPLETED - Service Provider not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "verificationDetails": {
            "required": [
              "code",
              "message"
            ],
            "type": "object",
            "properties": {
              "code": {
                "type": "integer",
                "description": "Response/error code to convey to client what went wrong in case of COMPLETED and account not matched and NOT_COMPLETED as well.",
                "example": 2100
              },
              "message": {
                "type": "string",
                "description": "Message corresponding to the above code.",
                "example": "Account identifier does not match"
              },
              "location": {
                "type": "string",
                "description": "To share the location.",
                "nullable": true,
                "example": "Server A"
              }
            }
          },
          "accountVerificationDetail": {
            "required": [
              "accountIdentifierMatch"
            ],
            "type": "object",
            "properties": {
              "nameMatch": {
                "type": "string",
                "description": "Indicates if recipient bank name is a match.",
                "nullable": true,
                "example": "Strong_Match",
                "enum": [
                  "Strong_Match",
                  "Partial_Match",
                  "No_Match"
                ]
              },
              "currencyCodes": {
                "type": "array",
                "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.<br /><b>Reserved for future use.</b>\n",
                "example": [
                  "USD",
                  "GBP",
                  "EUR"
                ],
                "items": {
                  "$ref": "#/components/schemas/AlphaCurrencyCode"
                }
              },
              "bankAccountName": {
                "type": "string",
                "description": "Field to indicate the actual name of the accountholder (if provided by account verification service provider).\n",
                "nullable": true,
                "example": "John Doe"
              },
              "accountIdentifierMatch": {
                "type": "string",
                "description": "Indicates if the account identifier provided matches the recipient's bank account identifier found.",
                "example": "true",
                "enum": [
                  "true",
                  "false"
                ]
              },
              "bankAccountNameTranslation": {
                "type": "string",
                "description": "Account HolderName Translated from the source language to english.<br /><b> Reserved for future use.</b>\n",
                "example": "Wang Li"
              }
            }
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED"
      },
      "VerificationTransactionDetail-8": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-2"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "AccountVerifyResponse-4": {
        "required": [
          "clientVerificationReference",
          "verificationId",
          "verificationStatus"
        ],
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "verificationStatus": {
            "description": "Provides the status of verification request.\n* COMPLETED - Request was completed and result is available.\n* NOT_COMPLETED - Service Provider not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "accountVerificationDetail": {
            "$ref": "#/components/schemas/AccountVerificationDetail"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference-2"
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "VerificationTransactionDetail-7": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-1"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData-1"
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder-1"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-2"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "AccountVerifyResponse-5": {
        "required": [
          "clientVerificationReference",
          "verificationId",
          "verificationStatus"
        ],
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "verificationStatus": {
            "description": "Provides the status of verification request.\n* COMPLETED - Request was completed and result is available.\n* NOT_COMPLETED - Service Provider not available.\n",
            "example": "COMPLETED",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "verificationDetails": {
            "required": [
              "code",
              "message"
            ],
            "properties": {
              "code": {
                "description": "Response/error code to convey to client what went wrong in case of COMPLETED and account not matched and NOT_COMPLETED as well.",
                "example": 2100,
                "exampleSetFlag": true,
                "types": [
                  "integer"
                ]
              },
              "message": {
                "description": "Message corresponding to the above code.",
                "example": "Account identifier does not match",
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              },
              "location": {
                "description": "To share the location.",
                "example": "Server A",
                "extensions": {
                  "nullable": true
                },
                "exampleSetFlag": true,
                "types": [
                  "string"
                ],
                "nullable": true
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          },
          "accountVerificationDetail": {
            "required": [
              "accountIdentifierMatch"
            ],
            "properties": {
              "nameMatch": {
                "description": "Indicates if recipient bank name is a match.",
                "example": "Strong_Match",
                "enum": [
                  "Strong_Match",
                  "Partial_Match",
                  "No_Match"
                ],
                "extensions": {
                  "nullable": true
                },
                "exampleSetFlag": true,
                "types": [
                  "string"
                ],
                "nullable": true
              },
              "currencyCodes": {
                "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.<br /><b>Reserved for future use.</b>\n",
                "example": [
                  "USD",
                  "GBP",
                  "EUR"
                ],
                "items": {
                  "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                },
                "exampleSetFlag": true,
                "types": [
                  "array"
                ]
              },
              "bankAccountName": {
                "description": "Field to indicate the actual name of the accountholder (if provided by account verification service provider).\n",
                "example": "John Doe",
                "extensions": {
                  "nullable": true
                },
                "exampleSetFlag": true,
                "types": [
                  "string"
                ],
                "nullable": true
              },
              "accountIdentifierMatch": {
                "description": "Indicates if the account identifier provided matches the recipient's bank account identifier found.\n- YES: Match\n- NO: No Match\n",
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "bankAccountNameTranslation": {
                "description": "Account HolderName Translated from the source language to english.<br /><b> Reserved for future use.</b>\n",
                "example": "Wang Li",
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DateOfBirth": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "This field should contain recipient’s date of birth.",
        "format": "date"
      },
      "200CardTransactionStatus-1": {
        "type": "string",
        "description": "- PAYMENT_DELIVERED: Visa has approved the card payout instruction, fund is moved\n- PAYMENT_DECLINED: Visa has declined the card payout instruction, fund is not moved\n- PAYMENT_RETURNED: Visa has reverted the card payout instruction, fund is not moved\n- PAYMENT_ERROR: Visa encountered error when processing the card payout instruction, fund is in unknown state\n",
        "enum": [
          "PAYMENT_DELIVERED",
          "PAYMENT_DECLINED",
          "PAYMENT_RETURNED",
          "PAYMENT_ERROR"
        ]
      },
      "SettlementDueBreachedFlexibleSettlementNotification": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "nextDueDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "SETTLEMENT_DUE_BREACHED"
            ]
          },
          "nextDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SettlementDueBreachedDetails"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "EssentialNetworkResponses": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "AFTResponseTransactionDetail-13": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTNetworkResponse-6"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdenifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          },
          "masterCardElectronicCommerceIndicators": {
            "$ref": "#/components/schemas/MasterCardElectronicCommerceIndicators"
          },
          "cpsAuthorizationCharacteristicIndicator": {
            "$ref": "#/components/schemas/CPSAuthorizationCharacteristicIndicator"
          }
        }
      },
      "FullNameInUnspecifiedIdentityType": {
        "maxLength": 70,
        "minLength": 3,
        "type": "string"
      },
      "IdentityField-1": {
        "title": "IdentityField",
        "required": [
          "description",
          "elementName",
          "inputType",
          "locale",
          "mandatory"
        ],
        "properties": {
          "locale": {
            "description": "The localization setting of this particular record.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "maxSize": {
            "description": "Suggested client side syntactic validation rule.",
            "format": "int32",
            "exampleSetFlag": false,
            "types": [
              "integer"
            ]
          },
          "subTitle": {
            "description": "If present contains a sub-label to be displayed with the field.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "tabOrder": {
            "description": "Indicates the ordering of this field in the UI.",
            "format": "int32",
            "exampleSetFlag": false,
            "types": [
              "integer"
            ]
          },
          "inputType": {
            "$ref": "#/components/schemas/IdentityFieldInput-1"
          },
          "listItems": {
            "minItems": 1,
            "description": "The identityListItems contain listItem sub-elements. The listItem sub-elements would normally be present where the inputType attribute is 'list'.",
            "items": {
              "$ref": "#/components/schemas/IdentityListItem-1"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "mandatory": {
            "description": "Indicates whether the field is mandatory.",
            "exampleSetFlag": false,
            "types": [
              "boolean"
            ]
          },
          "separator": {
            "description": "The separator to display following (to the right hand side) this field, usually '-' or '/'.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "description": {
            "description": "Suggested roll-over or help text description to assist users.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "displaySize": {
            "description": "A suggested field size to display.",
            "format": "int32",
            "exampleSetFlag": false,
            "types": [
              "integer"
            ]
          },
          "elementName": {
            "description": "The name of the element.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "valueRegexp": {
            "description": "The regexp for the value of this field.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "description": "Each IdentityField would normally be displayed in the UI from left to right based on the tabOrder attribute. The IdentityField element contains the attributes described below:-",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PendingCancelledTransactionStatus": {
        "type": "string",
        "description": "- PENDING: Payout is accepted but has not been acknowledged\n- PENDING_CANCELLATION: Cancel payout status is pending\n- CANCELLED - Payout is cancelled when in pending status\n",
        "enum": [
          "PENDING",
          "PENDING_CANCELLATION",
          "CANCELLED"
        ]
      },
      "MaxTransactionAmountEquivalent": {
        "type": "array",
        "items": {
          "required": [
            "currencyOfMaxAmount",
            "maxAmountValue"
          ],
          "type": "object",
          "properties": {
            "condition": {
              "type": "string",
              "description": "It refers to an 'id' value in the conditions[] array."
            },
            "maxAmountValue": {
              "type": "number",
              "description": "The maximum amount value allowed per transaction."
            },
            "currencyOfMaxAmount": {
              "type": "string",
              "description": "The (Alpha-3) ISO-4217 currency code of the maximum amount value allowed per transaction. This could be in recipient bank currency or in a more common currency like USD, EUR or GBP."
            }
          }
        }
      },
      "PayoutNotificationReceivedRequest": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Remitted Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "Id": {
        "type": "integer",
        "description": "Unique identifier for the transaction",
        "format": "int64",
        "example": 1234567890
      },
      "AFTRResponseData-11": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-11"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "AccountSenderTransactorDetailWithID": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual"
          },
          {
            "$ref": "#/components/schemas/AccountSenderIsCompany"
          }
        ]
      },
      "StatusIdentifier": {
        "type": "string",
        "description": "Status identifier"
      },
      "SenderContactNumber": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Sender contact number.",
        "example": "+14155551234"
      },
      "AFTROriginatorDetail": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTRCardAcceptor"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Account Funding Transaction Reversal"
      },
      "RuleWithFields": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "It defines an unique name of a rule"
          },
          "path": {
            "type": "string",
            "description": "It defines the rule-level JSON path"
          },
          "fields": {
            "type": "array",
            "description": "Conditional:\n  \n- It defines field's group. At least one of the 'fields'/'oneOfFields'/'anyOfFields' groups will be populated.\n",
            "items": {
              "$ref": "#/components/schemas/Field"
            }
          },
          "condition": {
            "type": "string",
            "description": "It refers to an 'id' value in the conditions[] array."
          },
          "anyOfFields": {
            "$ref": "#/components/schemas/OneOfFields"
          },
          "oneOfFields": {
            "$ref": "#/components/schemas/OneOfFields"
          }
        }
      },
      "CardQueryTransactionResponse": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "PayoutCardRequest-16": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Card, Account or Wallet\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-9"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "card"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-13"
              }
            ]
          }
        }
      },
      "PayoutCardRequest-15": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Card, Account or Wallet\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-8"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "card"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-12"
              }
            ]
          }
        }
      },
      "AFTRResponseData-18": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-18"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "CompanyIdTypeAccount-1": {
        "enum": [
          "T",
          "L",
          "I"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "AFTRResponseData-16": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-16"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "PaymentInstrument": {
        "type": "object",
        "properties": {
          "card": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Card-1"
              }
            ]
          },
          "address": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentInstrumentAddress"
              }
            ]
          },
          "phoneNumber": {
            "description": "Phone Number of the accountholder\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactNumber-1"
              }
            ]
          },
          "emailAddress": {
            "description": "Email Address of the accountholder\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactEmail"
              }
            ]
          },
          "accountHolder": {
            "description": "Account holder information of the payment instrument\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentInstrumentAccountHolder"
              }
            ]
          },
          "identificationList": {
            "description": "Identification list of the account holder\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountHolderIdentificationList"
              }
            ]
          }
        }
      },
      "PayoutCardRequest-12": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Card, Account or Wallet\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "card"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-8"
              }
            ]
          }
        }
      },
      "RecipientDateOfBirth-1": {
        "type": "string",
        "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\"). ISO20022 field name: Creditor Birth Date.\n",
        "format": "date"
      },
      "PayoutCardRequest-11": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Card, Account or Wallet\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "card"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "RecipientDateOfBirth-2": {
        "type": "string",
        "description": "Captures the recipient's date of birth for identity verification and compliance purposes.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Must follow ISO 8601 date format: YYYY-MM-DD.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must represent a valid calendar date</li>\n  <li>Year must be four digits, month and day two digits each</li>\n  <li>No alphabetic characters, spaces, or special symbols other than hyphen (-)</li>\n  <li>Cannot be a future date</li>\n</ul>",
        "format": "date"
      },
      "PayoutCardRequest-14": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Card, Account or Wallet\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-7"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "card"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-10"
              }
            ]
          }
        }
      },
      "PayoutCardRequest-13": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Card, Account or Wallet\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-6"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "card"
            ],
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard-1"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-9"
              }
            ]
          }
        }
      },
      "PayoutReturnRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "originalPayoutId",
              "returnAmount",
              "returnCurrencyCode",
              "returnDateTime",
              "returnPayoutId",
              "returnReasonDetails",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/ReturnReasonCodeDetailsType"
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "returnAmount": {
                "description": "The returned amount credited to Originating Entity as a result of the return Payout \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the Visa-generated unique identifier of the returned payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "originalPayoutId": {
                "description": "This is Visa-generated unique identifier of the original payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the returnAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutCardRequest-10": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-3"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-4"
              }
            ]
          }
        }
      },
      "PayoutReturnRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "comment": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string"
          },
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "originalPayoutId",
              "originalTransactionAmount",
              "originalTransactionCurrencyCode",
              "reasonDetails",
              "returnAmount",
              "returnCurrencyCode",
              "returnDateTime",
              "returnPayoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/ReturnReasonCodeDetailsType-1"
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "returnAmount": {
                "description": "The returned amount credited to Originating Entity as a result of the return Payout \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the Visa-generated unique identifier of the returned payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "originalPayoutId": {
                "description": "This is Visa-generated unique identifier of the original payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the returnAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutReturnRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-4"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "originalPayoutId",
              "returnAmount",
              "returnCurrencyCode",
              "returnDateTime",
              "returnPayoutId",
              "returnReasonDetails",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/ReturnReasonCodeDetailsType-2"
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "returnAmount": {
                "description": "The returned amount credited to Originating Entity as a result of the return Payout \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "returnPayoutId": {
                "description": "This is the Visa-generated unique identifier of the returned payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "originalPayoutId": {
                "description": "This is Visa-generated unique identifier of the original payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the returnAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-4"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DeliveredDateTime-2": {
        "description": "Optional.\nApplicable for statuses PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK, when available.\n\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nExample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
        "format": "date-time",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "AFTCardAcceptor": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "taxID": {
            "$ref": "#/components/schemas/TaxID"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "urlAddress": {
            "$ref": "#/components/schemas/UrlAddress"
          },
          "legalBusinessName": {
            "$ref": "#/components/schemas/CardAcceptorLegalBusinessName"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference"
          },
          "contactInformation": {
            "$ref": "#/components/schemas/CardAcceptorContactInformation"
          },
          "paymentFacilitator": {
            "$ref": "#/components/schemas/PaymentFacilitator"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "serviceLocationDetails": {
            "$ref": "#/components/schemas/ServiceLocationDetails"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          },
          "remoteCommerceAcceptorIdentifier": {
            "$ref": "#/components/schemas/RemoteCommerceAcceptorIdentifier"
          }
        }
      },
      "PayoutIdentifier-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          {
            "$ref": "#/components/schemas/PayoutId"
          }
        ]
      },
      "PayoutIdentifier-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ClientReferenceId-4"
          },
          {
            "$ref": "#/components/schemas/PayoutId-2"
          }
        ],
        "exampleSetFlag": false
      },
      "DeliveredDateTime-1": {
        "type": "string",
        "description": "Optional.\nApplicable for statuses PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK, when available.\n\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nExample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00",
        "format": "date-time"
      },
      "CompanySenderIdentificationListWallet": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number              \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "QueryTransactionDetail": {
        "required": [
          "clientReferenceId",
          "networkResponse",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier",
          "transactionType"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "$ref": "#/components/schemas/MotoECIIndicator"
              }
            }
          },
          "rejectReason": {
            "$ref": "#/components/schemas/RejectReason"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "processingDate": {
            "$ref": "#/components/schemas/ProcessingDate"
          },
          "settlementinfo": {
            "type": "object",
            "properties": {
              "givUpdatedFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              },
              "settlementAmount": {
                "type": "number",
                "description": "Transaction amount converted in settlement currency",
                "format": "bigDecimal"
              },
              "settlementServiceFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are: <br>0 - International Settlement<br>9 - VIP to decide<br>8 - National Settlement<br>"
              },
              "settlementCurrencyCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "integer",
                "description": "Settlement Currency code."
              },
              "givPreviouslyUpdatedFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              },
              "settlementConversionRate": {
                "type": "number",
                "description": "Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency",
                "format": "bigDecimal"
              },
              "settlementResponsibilityFlag": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Possible values are true or false"
              }
            },
            "description": "Settlement information for the transaction"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/QueryNetworkResponse"
          },
          "transactionType": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "rejectReasonCode": {
            "$ref": "#/components/schemas/RejectReasonCode"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          }
        }
      },
      "SettlementResponsibilityFlag-2": {
        "type": "string",
        "description": "Indicates whether the settlement responsibility lies with Visa or the client for the transaction.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>Y – Yes</li>\n  <li>N – No</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Field is mandatory in settlement-related responses.</li>\n</ul>",
        "example": "Y"
      },
      "TokenAssuranceMethod": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Token assurance method"
      },
      "Amount": {
        "minimum": 0,
        "exclusiveMinimum": true,
        "type": "number",
        "format": "double",
        "example": 12.34
      },
      "AncillarySenderDetailAddress": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the city of the ancillary sender's address."
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "This field contains the 3-digit numeric or 3-character alpha ISO country code of the ancillary sender's address.<br><br>Refer to <a href=\"https://developer.visa.com/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "This field contains the postal code of the ancillary sender's address."
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the first line of the ancillary sender's address."
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the second line of the ancillary sender's address."
          }
        }
      },
      "AFTRResponseOriginatorDetail-1": {
        "type": "object",
        "properties": {
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTRResponseCardAcceptor-1"
          }
        }
      },
      "DigitalAssetQueryResponse-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetQuerySuccessResponse-3"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryPendingCancelledResponse"
          }
        ]
      },
      "DigitalAssetValidateWalletTransactionDetail": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          }
        }
      },
      "DigitalAssetQueryResponse-13": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetQuerySuccessResponse-6"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryPendingCancelledResponse-3"
          }
        ]
      },
      "SettlementResponsibilityFlag-1": {
        "type": "boolean",
        "description": "This field carries a boolean flag to identify settlement responsibility\n"
      },
      "DigitalAssetQueryResponse-11": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryErrorResponse-3"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryPendingCancelledResponse-1"
          }
        ],
        "exampleSetFlag": false
      },
      "DigitalAssetQueryResponse-12": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetQuerySuccessResponse-5"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryErrorResponse-3"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryPendingCancelledResponse-2"
          }
        ],
        "exampleSetFlag": false
      },
      "AFTTransactionPosData-1": {
        "required": [
          "motoECIIndicator",
          "panEntryMode",
          "posConditionCode"
        ],
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData-1"
          },
          "panEntryMode": {
            "$ref": "#/components/schemas/PanEntryMode"
          },
          "posEnvironment": {
            "$ref": "#/components/schemas/PosEnvironment"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "chipConditionCode": {
            "$ref": "#/components/schemas/ChipConditionCode"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData-1"
          },
          "chipTransactionIndicator": {
            "$ref": "#/components/schemas/ChipTransactionIndicator"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-2"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant-1"
          },
          "chipAuthenticationReliabilityIndicator": {
            "$ref": "#/components/schemas/ChipAuthenticationReliabilityIndicator"
          }
        }
      },
      "AccountNumber-3": {
        "maxLength": 254,
        "minLength": 1,
        "description": "When present, this field contains recipient’s account number or alias at the bank.",
        "example": 3012345678901432,
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "PointOfServiceCapability-2": {
        "required": [
          "terminalEntryCapability",
          "terminalType"
        ],
        "type": "object",
        "properties": {
          "terminalType": {
            "maximum": 9,
            "minimum": 0,
            "type": "integer",
            "description": "Terminal type"
          },
          "terminalEntryCapability": {
            "maximum": 9,
            "minimum": 0,
            "type": "integer",
            "description": "Terminal entry capability"
          },
          "acceptsPartialAuthorizations": {
            "type": "integer",
            "description": "Accepts partial authorizations",
            "enum": [
              null,
              null
            ]
          }
        }
      },
      "AccountRecipientTypeIsUnspecified-2": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Recipient company name. Full name is conditionally required when \"firstName\" and \"lastName\" are not provided. <br>Must have at least 3 chars<br>Must not contain exclusively numeric characters<br>Must not contain special symbols<br> <table>  <tr>  <td>!</td><td>\"</td><td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FullNameInUnspecifiedIdentityType"
              }
            ]
          },
          "type": {
            "type": "string",
            "description": "Identifies the type of recipient - \"U\" for Unspecified(whether Individual or Company).\n",
            "enum": [
              "U"
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-15"
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/UnspecifiedTypeRecipientIdentificationListAccountWallet-2"
          }
        }
      },
      "PointOfServiceCapability-1": {
        "required": [
          "acceptsPartialAuthorizations"
        ],
        "type": "object",
        "properties": {
          "acceptsPartialAuthorizations": {
            "type": "string",
            "description": "This field is optional. This field is sent only to participating issuers. <br>Participating originators/acquirers may submit a value of TRUE in this field if the POS systems can accept partially approved transactions. Valid values: FALSE - Terminal does not support partial authorization. TRUE - Terminal accepts partial authorization responses.\n",
            "example": "false",
            "enum": [
              "TRUE",
              "FALSE"
            ]
          }
        },
        "description": "Point of Service Capability"
      },
      "PointOfServiceCapability-4": {
        "required": [
          "terminalEntryCapability",
          "terminalType"
        ],
        "type": "object",
        "properties": {
          "terminalType": {
            "maximum": 9,
            "minimum": 0,
            "type": "integer",
            "description": "This 1-digit code identifies the basic POS electronic terminal category. For CardPresent transactions, this field is required.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>0 – Unspecified</li>\n  <li>3 – Unattended cardholder-activated, authorized transaction</li>\n  <li>Use to indicate that the transaction has all following characteristics:</li>\n  <li>Occurs in an unattended cardholder-activated environment</li>\n  <li>Is authorized online or approved offline</li>\n  <li>Examples: Movie and game rentals, Automated retail</li>\n  <li>4 – Electronic cash register</li>\n  <li>5 – Unattended customer terminal (intended for use in the LAC region only)</li>\n  <li>7 – Telephone device (including Visa dial terminals)</li>\n  <li>8 – Reserved</li>\n  <li>9 – Use to identify that an mPOS device is used to originate a transaction on an open network</li>\n</ul>",
            "example": 4
          },
          "terminalEntryCapability": {
            "maximum": 9,
            "minimum": 0,
            "type": "integer",
            "description": "This 1-digit code identifies the capability of the terminal to electronically read account numbers (and expiration dates) from cards. For CardPresent transactions, this field is required.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>0 – Unknown codes</li>\n  <li>1 – Terminal not used</li>\n  <li>2 – Magnetic stripe read capability</li>\n  <li>3 – QR code</li>\n  <li>4 – OCR read capability</li>\n  <li>5 – Contact chip, magnetic-stripe, or proximity-capable terminal, indicating that the terminal can read the chip and</li>\n  <li>the magnetic stripe on the card. If contact chip is supported, a 5 should be used regardless of whether Visa</li>\n  <li>Contactless is also supported.</li>\n  <li>6 – Reserved for future use</li>\n  <li>7 – Reserved for future use</li>\n</ul>",
            "example": 5
          },
          "acceptsPartialAuthorizations": {
            "type": "integer",
            "description": "Optional. This field is sent only to participating issuers. Participating originators/acquirers may submit a value of TRUE in this field if the POS systems can accept partially approved transactions. If a value is entered in this field, the posTerminalEntryCapability and posTerminalType fields must be provided.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>FALSE – Terminal does not support partial authorization</li>\n  <li>TRUE – Terminal accepts partial authorization responses</li>\n</ul>",
            "enum": [
              null,
              null
            ]
          }
        }
      },
      "AFTTransactionPosData-4": {
        "required": [
          "motoECIIndicator",
          "panEntryMode",
          "posConditionCode"
        ],
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData-3"
          },
          "panEntryMode": {
            "$ref": "#/components/schemas/PanEntryMode"
          },
          "posEnvironment": {
            "$ref": "#/components/schemas/PosEnvironment"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator-1"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "chipConditionCode": {
            "$ref": "#/components/schemas/ChipConditionCode-1"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData-3"
          },
          "chipTransactionIndicator": {
            "$ref": "#/components/schemas/ChipTransactionIndicator"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-4"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData-1"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant-3"
          },
          "chipAuthenticationReliabilityIndicator": {
            "$ref": "#/components/schemas/ChipAuthenticationReliabilityIndicator"
          }
        }
      },
      "PointOfServiceCapability-3": {
        "type": "object",
        "properties": {
          "terminalType": {
            "maximum": 9,
            "minimum": 0,
            "type": "integer",
            "description": "Terminal type"
          },
          "terminalEntryCapability": {
            "maximum": 9,
            "minimum": 0,
            "type": "integer",
            "description": "Terminal entry capability"
          },
          "acceptsPartialAuthorizations": {
            "maximum": 9,
            "minimum": 0,
            "type": "integer",
            "description": "Accepts partial authorizations"
          }
        }
      },
      "AccountRecipientTypeIsUnspecified-1": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Recipient company name. Full name is conditionally required when \"firstName\" and \"lastName\" are not provided. <br>Must have at least 3 chars<br>Must not contain exclusively numeric characters<br>Must not contain special symbols<br> <table>  <tr>  <td>!</td><td>\"</td><td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FullNameInUnspecifiedIdentityType-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of recipient - \"U\" for Unspecified(whether Individual or Company).\n",
            "enum": [
              "U"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-11"
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth-1"
              }
            ],
            "exampleSetFlag": false
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-6"
              }
            ],
            "exampleSetFlag": false
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/UnspecifiedTypeRecipientIdentificationListAccountWallet-1"
          }
        },
        "exampleSetFlag": false
      },
      "AFTTransactionPosData-2": {
        "required": [
          "motoECIIndicator",
          "panEntryMode",
          "posConditionCode"
        ],
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData-2"
          },
          "panEntryMode": {
            "$ref": "#/components/schemas/PanEntryMode"
          },
          "posEnvironment": {
            "$ref": "#/components/schemas/PosEnvironment"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "chipConditionCode": {
            "$ref": "#/components/schemas/ChipConditionCode"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-3"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant-2"
          }
        }
      },
      "AccountNumber-2": {
        "maxLength": 254,
        "minLength": 1,
        "description": "When present, this field contains recipient’s account number or alias at the bank.",
        "example": "3012345678901432",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AccountNumber-1": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "When present, this field contains recipient’s account number at the bank.",
        "example": "3012345678901432"
      },
      "IdentityField": {
        "title": "IdentityField",
        "required": [
          "description",
          "elementName",
          "inputType",
          "locale",
          "mandatory"
        ],
        "type": "object",
        "properties": {
          "locale": {
            "type": "string",
            "description": "The localization setting of this particular record."
          },
          "maxSize": {
            "type": "integer",
            "description": "Suggested client side syntactic validation rule.",
            "format": "int32"
          },
          "subTitle": {
            "type": "string",
            "description": "If present contains a sub-label to be displayed with the field."
          },
          "tabOrder": {
            "type": "integer",
            "description": "Indicates the ordering of this field in the UI.",
            "format": "int32"
          },
          "inputType": {
            "$ref": "#/components/schemas/IdentityFieldInput"
          },
          "listItems": {
            "minItems": 1,
            "type": "array",
            "description": "The identityListItems contain listItem sub-elements. The listItem sub-elements would normally be present where the inputType attribute is 'list'.",
            "items": {
              "$ref": "#/components/schemas/IdentityListItem"
            }
          },
          "mandatory": {
            "type": "boolean",
            "description": "Indicates whether the field is mandatory."
          },
          "separator": {
            "type": "string",
            "description": "The separator to display following (to the right hand side) this field, usually '-' or '/'."
          },
          "description": {
            "type": "string",
            "description": "Suggested roll-over or help text description to assist users."
          },
          "displaySize": {
            "type": "integer",
            "description": "A suggested field size to display.",
            "format": "int32"
          },
          "elementName": {
            "type": "string",
            "description": "The name of the element."
          },
          "valueRegexp": {
            "type": "string",
            "description": "The regexp for the value of this field."
          }
        },
        "description": "Each IdentityField would normally be displayed in the UI from left to right based on the tabOrder attribute. The IdentityField element contains the attributes described below:-"
      },
      "TransactionBase": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "number",
            "format": "double"
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "currency code. refer to <a href=\"https://developer.visa.com/request_response_codes#iso_country_and_currency_codes\">ISO currency code<a>"
          }
        }
      },
      "OriginalDataElements": {
        "required": [
          "acquiringBin",
          "systemsTraceAuditNumber",
          "transmissionDateTime"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "approvalCode": {
            "maxLength": 6,
            "minLength": 1,
            "type": "string",
            "description": "Approval code from the original transaction",
            "example": "123456"
          },
          "transmissionDateTime": {
            "type": "string",
            "description": "Date and time of the original transaction transmission",
            "format": "date-time",
            "example": "2023-06-15T14:25:32Z"
          },
          "systemsTraceAuditNumber": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        },
        "description": "Data elements from the original transaction that is being reversed"
      },
      "AFTRTransactionDetail": {
        "required": [
          "id",
          "idType",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "card": {
            "type": "object",
            "properties": {
              "posData": {
                "$ref": "#/components/schemas/PosData"
              }
            }
          },
          "fees": {
            "$ref": "#/components/schemas/Fees"
          },
          "idType": {
            "$ref": "#/components/schemas/IdType-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTRTransactionDetailAdditionalData"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionCurrencyCode": {
            "description": "Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          }
        },
        "description": "Transaction details for Account Funding Transaction Reversal"
      },
      "ValidatePayoutWalletRequest-28": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-6"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-27"
          }
        ]
      },
      "ValidatePayoutWalletRequest-27": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-26"
          }
        ]
      },
      "ValidatePayoutWalletRequest-29": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-7"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-28"
          }
        ],
        "exampleSetFlag": false
      },
      "AFTTransactionPosData": {
        "required": [
          "motoECIIndicator",
          "panEntryMode",
          "posConditionCode"
        ],
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData"
          },
          "panEntryMode": {
            "$ref": "#/components/schemas/PanEntryMode"
          },
          "posEnvironment": {
            "$ref": "#/components/schemas/PosEnvironment"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "chipConditionCode": {
            "$ref": "#/components/schemas/ChipConditionCode"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData"
          },
          "chipTransactionIndicator": {
            "$ref": "#/components/schemas/ChipTransactionIndicator"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant"
          },
          "chipAuthenticationReliabilityIndicator": {
            "$ref": "#/components/schemas/ChipAuthenticationReliabilityIndicator"
          }
        }
      },
      "SubDivisionMinorCode": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "This field contains ISO subdivision minor code of address.",
        "example": "Travis"
      },
      "ValidatePayoutWalletRequest-24": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-23"
          }
        ]
      },
      "ValidatePayoutWalletRequest-23": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-22"
          }
        ]
      },
      "ValidatePayoutWalletRequest-26": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/ValidateWalletTransactionDetail-4"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-25"
          }
        ],
        "exampleSetFlag": false
      },
      "ValidatePayoutWalletRequest-25": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-24"
          }
        ]
      },
      "TotalAmountDue-1": {
        "description": "Total amount due by due date.",
        "format": "double",
        "exampleSetFlag": false,
        "types": [
          "number"
        ]
      },
      "ValidatePayoutWalletRequest-20": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-6"
          }
        ]
      },
      "PaymentFacilitatorName-1": {
        "maxLength": 25,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nName of the payment facilitator.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Alphanumeric, spaces, and limited punctuation.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the registered name of the facilitator.</li>\n  <li>This field is required when a payment facilitator is involved.</li>\n</ul>",
        "example": "Payment Facilitator Inc."
      },
      "ValidatePayoutWalletRequest-22": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-21"
          }
        ]
      },
      "ValidatePayoutWalletRequest-21": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-20"
          }
        ]
      },
      "CardPayoutValidateRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-14"
          }
        ]
      },
      "CompanyName": {
        "maxLength": 70,
        "minLength": 2,
        "type": "string",
        "description": "Company name",
        "example": "Visa"
      },
      "CardPayoutValidateRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-15"
          }
        ]
      },
      "CardPayoutValidateRequest-15": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-16"
          }
        ]
      },
      "CardPayoutValidateRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-11"
          }
        ]
      },
      "CardPayoutValidateRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-12"
          }
        ]
      },
      "CardPayoutValidateRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-13"
          }
        ]
      },
      "WalletPayoutOnlyRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/WalletTransactionDetail-8"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-11"
          }
        ]
      },
      "SendPayoutRequest-30": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-30"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-27"
          }
        ]
      },
      "WalletPayoutOnlyRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/WalletTransactionDetail-4"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-9"
          }
        ],
        "exampleSetFlag": false
      },
      "SendPayoutRequest-31": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-31"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-28"
          }
        ]
      },
      "MiddleName-1": {
        "maxLength": 35,
        "minLength": 2,
        "type": "string",
        "description": "Middle name of the recipient"
      },
      "WalletPayoutOnlyRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-7"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-10"
          }
        ],
        "exampleSetFlag": false
      },
      "SendPayoutRequest-32": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-32"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-29"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetPayoutRequest-8"
          }
        ],
        "exampleSetFlag": false
      },
      "SendPayoutRequest-33": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-33"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-30"
          }
        ]
      },
      "AnyCondition": {
        "required": [
          "any",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "It defines an unique 'id' value of a condition"
          },
          "any": {
            "minItems": 1,
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/BooleanExpression"
                },
                {
                  "$ref": "#/components/schemas/ConditionById"
                }
              ]
            }
          }
        }
      },
      "ValidateWalletTransactionDetail-15": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-2"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-4"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "SenderAccountNumber-6": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis is a 16-digit PAN or token which defines the account of the consumer (sender of push payment).<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be numeric</li>\n  <li>Cannot contain spaces or non-numeric characters</li>\n  <li>This field is mandatory if senderReferenceNumber or paymentCredentialReference is not sent.</li>\n  <li>Only one of 'senderAccountNumber', 'senderReferenceNumber' and 'paymentCredentialReference' should be provided in a request</li>\n  <li>If the transaction is a money transfer, pre-paid load, or credit card bill pay, and if the sender intends to fund the transaction with a financial instrument (for example, debit card), this field is required and must contain the sender's account number.</li>\n  <li>If the transaction is a funds disbursement, the field is not required.</li>\n  <li>Required for transactions routed over Non-Visa networks through the Push Payment Gateway Service.</li>\n</ul>",
        "example": "1234567890123456"
      },
      "SendPayoutRequest-26": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-26"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-24"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-15"
          }
        ]
      },
      "DigitalAssetPayoutRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-8"
          }
        ],
        "exampleSetFlag": false
      },
      "SendPayoutRequest-27": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-27"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-25"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-16"
          }
        ]
      },
      "SenderAccountNumber-7": {
        "maxLength": 34,
        "minLength": 1,
        "description": "Conditional - This field is Mandatory if a senderReferenceNumber is not sent. <br />\nNote:\nClient should provide either a sender reference number or a sender account number but not both.\nClient should not send any PANs in this field for payout.\n",
        "example": "A42434234S324234",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "SenderAccountNumber-4": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "Conditional - This field is mandatory if senderReferenceNumber or paymentCredentialReference is not sent. <br />\nNote:\nClient should provide either a sender reference number or a sender account number but not both.\nClient should not send any PANs in this field for payout.\n",
        "example": "A42434234S324234"
      },
      "SendPayoutRequest-28": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-28"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-1"
          }
        ]
      },
      "SenderAccountNumber-5": {
        "maxLength": 70,
        "minLength": 1,
        "type": "string",
        "description": "Conditional - This field is Mandatory if a senderReferenceNumber is not sent. <br />\nNote:\nClient should provide either a sender reference number or a sender account number but not both.\nClient should not send any PANs in this field for payout.\n",
        "example": "A42434234S324234"
      },
      "SendPayoutRequest-29": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-29"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-26"
          }
        ],
        "exampleSetFlag": false
      },
      "RouteDefiningFields": {
        "type": "array",
        "description": "This section returns country, currency, payout method as provided by the client in the MetaData API request. These fields are also required in a Send Payout API request. These fields may appear as \"facts\" in the conditions ID definitions.\n",
        "items": {
          "oneOf": [
            {
              "$ref": "#/components/schemas/PayoutFieldDefinition"
            },
            {
              "$ref": "#/components/schemas/PayoutFieldDefinitionForCurrencyCode"
            },
            {
              "$ref": "#/components/schemas/NonPayoutFieldDefinition"
            }
          ]
        }
      },
      "ValidatePayoutWalletRequest-17": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-3"
          }
        ]
      },
      "DigitalAssetPayoutRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-4"
          }
        ]
      },
      "ValidatePayoutWalletRequest-16": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-13"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-15"
          }
        ]
      },
      "DigitalAssetPayoutRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-5"
          }
        ]
      },
      "ValidatePayoutWalletRequest-19": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-15"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-18"
          }
        ]
      },
      "DigitalAssetPayoutRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-6"
          }
        ]
      },
      "ValidatePayoutWalletRequest-18": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-15"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-17"
          }
        ]
      },
      "DigitalAssetPayoutRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-7"
          }
        ]
      },
      "ValidatePayoutWalletRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-13"
          }
        ]
      },
      "DigitalAssetPayoutRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-1"
          }
        ]
      },
      "AccountQueryPendingResponse-1": {
        "$ref": "#/components/schemas/202AccountPayoutCreatedResponse-2"
      },
      "ValidatePayoutWalletRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-12"
          }
        ]
      },
      "Recipient": {
        "required": [
          "primaryAccountNumber"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAddress"
          },
          "cardExpiryDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "primaryAccountNumber": {
            "$ref": "#/components/schemas/PrimaryAccountNumber"
          }
        }
      },
      "ValidatePayoutWalletRequest-15": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-1"
          }
        ]
      },
      "DigitalAssetPayoutRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-2"
          }
        ]
      },
      "AccountQueryPendingResponse-2": {
        "$ref": "#/components/schemas/202AccountPayoutCreatedResponse-4"
      },
      "AccountQueryPendingResponse-3": {
        "$ref": "#/components/schemas/202AccountPayoutCreatedResponse-3"
      },
      "ValidatePayoutWalletRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-14"
          }
        ]
      },
      "DigitalAssetPayoutRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest-3"
          }
        ]
      },
      "SenderAccountNumber-2": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "Conditional - This field is Mandatory if a senderReferenceNumber is not sent. <br />\nNote:\nClient should provide either a sender reference number or a sender account number but not both.\nClient should not send any PANs in this field for payout.         \n",
        "example": "A42434234S324234"
      },
      "403ErrorResponseObject-1": {
        "properties": {
          "reason": {
            "description": "The short description of the error.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "description": "3 digit HTTP status code",
            "example": 403,
            "exampleSetFlag": true,
            "types": [
              "integer"
            ]
          },
          "details": {
            "items": {
              "properties": {
                "code": {
                  "description": "A short code indicating the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "message": {
                  "description": "The long description of the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "location": {
                  "description": "The place in the incoming message that the particular error occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "message": {
            "description": "The long description of the error",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SenderAccountNumber-3": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "CONDITIONAL - This field is Mandatory if a senderReferenceNumber is not sent. \nNote:\nClient should provide either a sender reference number or a sender account number but not both.\nClient should not send any PANs in this field for payout.         \n",
        "example": "A42434234S324234"
      },
      "AccountQueryPendingResponse-5": {
        "$ref": "#/components/schemas/202AccountPayoutCreatedResponse-5"
      },
      "ValidatePayoutWalletRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-11"
          }
        ]
      },
      "AccountQueryPendingResponse-6": {
        "$ref": "#/components/schemas/202AccountPayoutCreatedResponse-6"
      },
      "CardData": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string"
          },
          "expirationDate": {
            "type": "string",
            "format": "date"
          }
        }
      },
      "SenderAccountNumber-1": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "Conditional - This field is mandatory if senderReferenceNumber or paymentCredentialReference is not sent. <br />\nNote:\nClient should provide either a sender reference number or a sender account number but not both.\nClient should not send any PANs in this field for payout.\n",
        "example": "A42434234S324234"
      },
      "ValidatePayoutWalletRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-10"
          }
        ]
      },
      "PayoutReturnRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "originalPayoutId",
              "originalTransactionAmount",
              "originalTransactionCurrencyCode",
              "returnAmount",
              "returnCurrencyCode",
              "returnDateTime",
              "returnPayoutId",
              "returnReasonDetails",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/ReturnReasonCodeDetailsType-1"
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "returnAmount": {
                "description": "The returned amount credited to Originating Entity as a result of the return Payout \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the Visa-generated unique identifier of the returned payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "originalPayoutId": {
                "description": "This is Visa-generated unique identifier of the original payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the returnAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-2"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "ValidPayoutWithNetworkResponse-12": {
        "required": [
          "validationResultCode"
        ],
        "properties": {
          "nameMatch": {
            "$ref": "#/components/schemas/nameMatch-2"
          },
          "currencyCodes": {
            "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.\n",
            "example": [
              "USD",
              "GBP",
              "EUR"
            ],
            "items": {
              "$ref": "#/components/schemas/AlphaCurrencyCode-2"
            },
            "exampleSetFlag": true,
            "types": [
              "array"
            ]
          },
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "bankAccountName": {
            "maxLength": 255,
            "minLength": 1,
            "description": "recipient bank account name i.e. account holder name as returned by the partner when nameMatch = ‘PARTIAL_MATCH’. Available for some corridors. Applicable only for Accounts.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "expectedPostingDate": {
            "$ref": "#/components/schemas/ExpectedPostingDateForValidate-2"
          },
          "validationResultCode": {
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed.\n",
            "enum": [
              "VALID_WITH_NETWORK"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "bankAccountNameTranslation": {
            "description": "Account HolderName Translated from the source language to english.\n",
            "example": "Wang Li",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutReturnRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "originalPayoutId",
              "originalTransactionAmount",
              "originalTransactionCurrencyCode",
              "returnAmount",
              "returnCurrencyCode",
              "returnDateTime",
              "returnPayoutId",
              "returnReasonDetails",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/ReturnReasonCodeDetailsType"
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "returnAmount": {
                "description": "The returned amount credited to Originating Entity as a result of the return Payout \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the Visa-generated unique identifier of the returned payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "originalPayoutId": {
                "description": "This is Visa-generated unique identifier of the original payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the returnAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-3"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountWalletRecipientIndividual-1": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/AccountWalletRecipientPayoutAddress-1"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "PayoutReturnRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-5"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "originalPayoutId",
              "returnAmount",
              "returnCurrencyCode",
              "returnDateTime",
              "returnPayoutId",
              "returnReasonDetails",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/ReturnReasonCodeDetailsType-2"
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "returnAmount": {
                "description": "The returned amount credited to Originating Entity as a result of the return Payout \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnPayoutId": {
                "description": "This is the Visa-generated unique identifier of the returned payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "originalPayoutId": {
                "description": "This is Visa-generated unique identifier of the original payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the returnAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-5"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutReturnRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "originalPayoutId",
              "originalTransactionAmount",
              "originalTransactionCurrencyCode",
              "returnAmount",
              "returnCurrencyCode",
              "returnDateTime",
              "returnPayoutId",
              "returnReasonDetails",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/ReturnReasonCodeDetailsType"
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "returnAmount": {
                "description": "The returned amount credited to Originating Entity as a result of the return Payout \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the Visa-generated unique identifier of the returned payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "originalPayoutId": {
                "description": "This is Visa-generated unique identifier of the original payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the returnAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-3"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountWalletRecipientIndividual-2": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/AccountWalletRecipientPayoutAddress-2"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "ValidPayoutWithNetworkResponse-10": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "nameMatch": {
            "$ref": "#/components/schemas/nameMatch"
          },
          "currencyCodes": {
            "type": "array",
            "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.\n",
            "example": [
              "USD",
              "GBP",
              "EUR"
            ],
            "items": {
              "$ref": "#/components/schemas/AlphaCurrencyCode"
            }
          },
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "bankAccountName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account name i.e. account holder name as returned by the partner when nameMatch = ‘PARTIAL_MATCH’. Available for some corridors. Applicable only for Accounts."
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed.\n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          },
          "bankAccountNameTranslation": {
            "type": "string",
            "description": "Account HolderName Translated from the source language to english.\n",
            "example": "Wang Li"
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "PayoutReturnRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "originalPayoutId",
              "returnAmount",
              "returnCurrencyCode",
              "returnDateTime",
              "returnPayoutId",
              "returnReasonDetails",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/ReturnReasonCodeDetailsType"
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "returnAmount": {
                "description": "The returned amount credited to Originating Entity as a result of the return Payout \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "returnPayoutId": {
                "description": "This is the Visa-generated unique identifier of the returned payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "originalPayoutId": {
                "description": "This is Visa-generated unique identifier of the original payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the returnAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-6"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "ChipConditionCode-1": {
        "type": "number",
        "description": "This field applies to magnetic stripe read transactions where the card and terminal are chip capable. It does not apply to VSDC transactions where the chip is read; it is used only when the chip card's magnetic stripe is read instead of the chip.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>0 – Not applicable to fallback transactions. For chip read transactions this field must contain a 0 or be excluded from the message.</li>\n  <li>1 – Applies to fallback transactions. Transaction was initiated from a magnetic stripe with a service code beginning with 2 or 6, and the last read at VSDC terminal was a successful chip read or was not a chip transaction.</li>\n  <li>2 – Applies to fallback transactions. Transaction was initiated at a chip-capable terminal from a magnetic stripe that contains service code 2 or 6, and the previous transaction initiated by that terminal was an unsuccessful chip read.</li>\n</ul>",
        "example": 1
      },
      "SendPayoutRequest-20": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-5"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-3"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetPayoutRequest-2"
          }
        ]
      },
      "SendPayoutRequest-21": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-6"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-6"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-12"
          }
        ]
      },
      "SendPayoutRequest-22": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-22"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-10"
          }
        ]
      },
      "SendPayoutRequest-23": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-23"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-21"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-13"
          }
        ]
      },
      "ValidateWalletTransactionDetail-13": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-3"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "SendPayoutRequest-24": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-24"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-22"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-14"
          }
        ]
      },
      "ValidPayoutWithNetworkResponse-13": {
        "required": [
          "validationResultCode"
        ],
        "properties": {
          "nameMatch": {
            "$ref": "#/components/schemas/nameMatch-2"
          },
          "currencyCodes": {
            "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.\n",
            "example": [
              "USD",
              "GBP",
              "EUR"
            ],
            "items": {
              "$ref": "#/components/schemas/AlphaCurrencyCode-2"
            },
            "exampleSetFlag": true,
            "types": [
              "array"
            ]
          },
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "bankAccountName": {
            "maxLength": 255,
            "minLength": 1,
            "description": "recipient bank account name i.e. account holder name as returned by the partner when nameMatch = ‘PARTIAL_MATCH’. Available for some corridors. Applicable only for Accounts.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ],
            "exampleSetFlag": false
          },
          "validationResultCode": {
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed.\n",
            "enum": [
              "VALID_WITH_NETWORK"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "bankAccountNameTranslation": {
            "description": "Account HolderName Translated from the source language to english.\n",
            "example": "Wang Li",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RequestType": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Valid values include\n\n00 - (Not Deferred OCT) , Is the default value if not specified on the request. \n\n01 - (Originator Hold) , ndicates that the originating acquirer has held the OCT for a period of time before sending to Visa and is requesting for Visa to treat the transaction as a deferred OCT. Note: The value of 01 is reserved for originating acquirers that meet certain conditions. Contact your regional client support representative for more information \n\n02 - (Visa deferred OCT hold, default interval).This value indicates that the originating acquirer is requesting Visa to apply the default holding period of 48 hours upon receipt and process the request as a deferred OCT.\n\nNote: Visa sends the value of this field over to revipient issuer on the request\n"
      },
      "ValidateWalletTransactionDetail-12": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "SendPayoutRequest-25": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-25"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-23"
          }
        ]
      },
      "ValidPayoutWithNetworkResponse-14": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "nameMatch": {
            "$ref": "#/components/schemas/nameMatch"
          },
          "currencyCodes": {
            "type": "array",
            "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.\n",
            "example": [
              "USD",
              "GBP",
              "EUR"
            ],
            "items": {
              "$ref": "#/components/schemas/AlphaCurrencyCode"
            }
          },
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "bankAccountName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account name i.e. account holder name as returned by the partner when nameMatch = ‘PARTIAL_MATCH’. Available for some corridors. Applicable only for Accounts."
          },
          "expectedPostingDate": {
            "$ref": "#/components/schemas/ExpectedPostingDateForValidate-3"
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed.\n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          },
          "bankAccountNameTranslation": {
            "type": "string",
            "description": "Account HolderName Translated from the source language to english.\n",
            "example": "Wang Li"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference"
          }
        }
      },
      "SendPayoutRequest-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-15"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-15"
          }
        ]
      },
      "CardAcceptorAddress-1": {
        "required": [
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "City of the Merchant/Originator."
          },
          "state": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>State or province of the Merchant/Originator.<br> Required if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.<br><b>Note:<b> For \"US\" or \"CA\", this field can contain either the full name of the state or the 2 character code of the state. For rest of the countries, if applicable, the field contains the state code of a maximum 6 characters length."
          },
          "county": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "County",
            "example": "County Name"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO Country Code. Refer to <a href=\"https://developer.visa.com/request_response_codes#iso_country_and_currency_codes\">ISO Country Code</a>"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Zip/Postal code of the Merchant/Originator.<br>Required if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.<br><b>Note:</b> For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters."
          },
          "addressLine": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Street Address of merchant/acquirer."
          }
        }
      },
      "SendPayoutRequest-16": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-16"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-16"
          }
        ]
      },
      "SendPayoutRequest-17": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-5"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-3"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-11"
          }
        ]
      },
      "CardAcceptorAddress-3": {
        "required": [
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "City of the Merchant/Originator."
          },
          "state": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>State or province of the Merchant/Originator.<br> Required if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.<br><b>Note:<b> For \"US\" or \"CA\", this field can contain either the full name of the state or the 2 character code of the state. For rest of the countries, if applicable, the field contains the state code of a maximum 6 characters length."
          },
          "county": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "County",
            "example": "County Name"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "The country code of the card acceptor's address. This identifies the country where the originator or money transfer operator is located. Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a><br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain the 3-character alpha ISO 3166-1 country code.</li>\n  <li>Required when cardAcceptor.address is provided.</li>\n</ul>",
            "example": "USA"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Zip/Postal code of the Merchant/Originator.<br>Required if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.<br><b>Note:</b> For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters."
          },
          "addressLine": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br>\nStreet address of the Merchant/Originator. This field is required for: All cross-border transactions when the issuer is in Canada or Australia. All MasterCard transactions.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Required for:\n    <ul>\n      <li>All cross-border transactions when the issuer is in Canada or Australia.</li>\n      <li>All MasterCard transactions.</li>\n    </ul>\n  </li>\n</ul>",
            "example": "123 Main Street"
          }
        }
      },
      "SendPayoutRequest-18": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-18"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-18"
          }
        ]
      },
      "CardAcceptorAddress-2": {
        "required": [
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "City of the Merchant/Originator."
          },
          "state": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "<b>Conditional</b><br>State or province of the Merchant/Originator.<br> Required if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.<br><b>Note:<b> For \"US\" or \"CA\", this field can contain either the full name of the state or the 2 character code of the state. For rest of the countries, if applicable, the field contains the state code of a maximum 6 characters length."
          },
          "county": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "County",
            "example": "County Name"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO Country Code. Refer to <a href=\"https://developer.visa.com/request_response_codes#iso_country_and_currency_codes\">ISO Country Code</a>"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Zip/Postal code of the Merchant/Originator.<br>Required if the cardAcceptor:address:country is \"US\" or \"CA\", for all cross border transactions when issuer is in Canada or Australia, and for all MasterCard transactions.<br><b>Note:</b> For \"US\", \"CA\", and US territories (Puerto Rico/Guam/US Virgin Island/American Samoa/Northern Mariana Island), the maximum length of the field is 9 characters. For rest of the countries, the maximum length of the field is 8 characters."
          },
          "addressLine": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Street Address of merchant/acquirer."
          }
        }
      },
      "SendPayoutRequest-19": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetPayoutRequest-1"
          }
        ]
      },
      "TaxID-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field contains the identifier of the acceptor issued by a taxation authority. This field is required for all MasterCard transactions.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Alphanumeric.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the official tax ID issued by the relevant tax authority.</li>\n  <li>Ensure compliance with local regulatory requirements.</li>\n  <li>This field is required for all MasterCard transactions.</li>\n</ul>",
        "example": "123456789"
      },
      "SettlementResponsibilityFlag": {
        "type": "string",
        "description": "Flag indicating the settlement responsibility",
        "example": "Y"
      },
      "DigitalAssetPayoutRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequest"
          }
        ]
      },
      "TransactionIdentifier-1": {
        "type": "number",
        "description": "Visa-generated unique identifier for the transaction. Condition: The VisaNet reference number for the transaction ISO-8583 field Name and Number: Transaction Identifier Field 62.2<br><br>\n<b>Note:</b> transactionIdentifier is a Visa generated field that client receives in the response message. As an exception Visa allows clients to use the transactionIdentifier received in the AFT response into the subsequent OCT message - this is to simplify matching the pull and push transaction pair and reconciliation.",
        "format": "int64",
        "example": 123456789012345
      },
      "TotalAmountOverdueSettlementDueBreached-1": {
        "description": "Total amount currently overdue. This represents only the amounts that have actually breached their due date/time, excluding any future-dated amounts that are not yet due.\n",
        "format": "double",
        "exampleSetFlag": false,
        "types": [
          "number"
        ]
      },
      "InvalidPayoutResponse": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "SendPayoutRequest-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-7"
          }
        ]
      },
      "SendPayoutRequest-11": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-11"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-11"
          }
        ]
      },
      "SendPayoutRequest-12": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-8"
          }
        ]
      },
      "SendPayoutRequest-13": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-4"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-2"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-9"
          }
        ]
      },
      "OctSenderPaymentCredentialReference": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          }
        },
        "description": "External reference to a payment credential"
      },
      "SendPayoutRequest-14": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountPayoutRequest-14"
          },
          {
            "$ref": "#/components/schemas/WalletPayoutRequest-14"
          },
          {
            "$ref": "#/components/schemas/CardPayoutRequest-10"
          }
        ]
      },
      "SettlementDueBreachedDetails-5": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "totalAmountOverdue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/TotalAmountOverdueSettlementDueBreached"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen"
          }
        }
      },
      "PinData-1": {
        "required": [
          "pinBlockFormatCode",
          "pinDataBlock"
        ],
        "type": "object",
        "properties": {
          "pinDataBlock": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string",
            "description": "PIN data block",
            "format": "binary"
          },
          "zoneKeyIndex": {
            "maximum": 99,
            "minimum": 0,
            "type": "integer",
            "description": "Zone key index"
          },
          "pinBlockFormatCode": {
            "maximum": 99,
            "minimum": 0,
            "type": "integer",
            "description": "PIN block format code"
          }
        }
      },
      "VerificationTransactionDetail-9": {
        "required": [
          "clientReferenceId"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/VerificationCard-2"
          },
          "posData": {
            "$ref": "#/components/schemas/VerificationPosData"
          },
          "networkId": {
            "maxLength": 4,
            "type": "integer",
            "description": "<p>This contains a code that specifies the network to be used for transmission of the message and determines the program rules that apply to the transaction.</p>",
            "example": 2
          },
          "cardHolder": {
            "$ref": "#/components/schemas/VerificationCardHolder"
          },
          "clientReferenceId": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string",
            "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/AcnvPaymentCredentialReference-3"
          }
        },
        "description": "Transaction details for Verification check <b>Conditional</b> Only one of 'card' and 'paymentCredentialReference' is provided in a request."
      },
      "SettlementDueBreachedDetails-4": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact-1"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue-1"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SettlementDueBreachedDetails-3": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "totalAmountOverdue",
          "vplContact"
        ],
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact-1"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue-1"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/TotalAmountOverdueSettlementDueBreached-1"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SenderIdentification": {
        "type": "object",
        "properties": {
          "idType": {
            "type": "string",
            "description": "Type of identification document. Valid types include: CUID (Customer ID), NTID (National ID), PASN (Passport), DRLN (Driver License), TXIN (Tax ID), CPNY (Company ID), PRXY (Proxy ID), SSNB (Social Security Number), ARNB (Alien Registration Number), LAWE (Law Enforcement ID), MILI (Military ID), TRVL (Travel Document), EMAL (Email), PHON (Phone), BTHD (Date of Birth)\n",
            "example": "PASN",
            "enum": [
              "CUID",
              "NTID",
              "PASN",
              "DRLN",
              "TXIN",
              "CPNY",
              "PRXY",
              "SSNB",
              "ARNB",
              "LAWE",
              "MILI",
              "TRVL",
              "EMAL",
              "PHON",
              "BTHD"
            ]
          },
          "idNumber": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Sender identification number (issued by a government or similar authority). Needs to be provided by Originating Entity along with the payment in certain markets.\n",
            "example": "A1234567"
          },
          "idOwnerType": {
            "type": "string",
            "enum": [
              "C",
              "I"
            ]
          },
          "idIssueCountry": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Sender identification issuing country. Format: 3-digit numeric or 3-character alpha ISO country code.\n",
            "example": "840 USA"
          }
        },
        "description": "Sender identification document details"
      },
      "SettlementDueBreachedDetails-2": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "totalAmountOverdue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/SettlementOverdueDetailsTotalAmountOverdue"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen"
          }
        }
      },
      "WalletRecipientIsCompany-10": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-15"
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanyRecipientIdentificationListWallet-3"
          }
        }
      },
      "SettlementDueBreachedDetails-1": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "totalAmountOverdue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "totalAmountOverdue": {
            "$ref": "#/components/schemas/TotalAmountOverdueSettlementDueBreached"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen"
          }
        }
      },
      "Wallet": {
        "required": [
          "accountIdentifier",
          "accountIdentifierType",
          "countryCode",
          "currencyCode",
          "operatorName"
        ],
        "type": "object",
        "properties": {
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "operatorName": {
            "type": "string",
            "description": "This identifies the operator that has issued the account to the recipient and is going to receive and post the funds to the recipient’s wallet.\n(Refer to Visa Direct Endpoint Guide on list of supported Wallet Operators).\n"
          },
          "accountIdentifier": {
            "maxLength": 210,
            "minLength": 1,
            "type": "string",
            "description": "The wallet recipient's actual account identifier associated with the wallet operator (e.g., wallet address - phone/email/username that identifies the account associated with the wallet operator)\n"
          },
          "accountIdentifierType": {
            "type": "string",
            "description": "The type of account identifier used by the recipient. \n\nSupported values are PHONENUMBER, EMAIL and USERNAME.\n",
            "example": "PHONENUMBER",
            "enum": [
              "PHONENUMBER",
              "EMAIL",
              "USERNAME"
            ]
          }
        },
        "description": "Recipient's wallet object\n\nConditional object when payoutMethod has value 'W'\n"
      },
      "AFTRSenderDetail": {
        "required": [
          "senderReferenceNumber"
        ],
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/AFTRSenderCard"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          }
        },
        "description": "Details of the sender including name, address, and date of birth for Account Funding Transaction Reversal"
      },
      "SenderAccountWalletPayoutAddress": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "PinData-2": {
        "required": [
          "pinBlockFormatCode",
          "pinDataBlock"
        ],
        "type": "object",
        "properties": {
          "pinDataBlock": {
            "minLength": 8,
            "type": "string",
            "description": "PIN data block",
            "format": "binary"
          },
          "zoneKeyIndex": {
            "maximum": 99,
            "minimum": 0,
            "type": "integer",
            "description": "Zone key index"
          },
          "pinBlockFormatCode": {
            "maximum": 99,
            "minimum": 0,
            "type": "integer",
            "description": "PIN block format code"
          }
        }
      },
      "PinData-3": {
        "required": [
          "pinBlockFormatCode",
          "pinDataBlock"
        ],
        "type": "object",
        "properties": {
          "pinDataBlock": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string",
            "description": "Contains the encrypted PIN block data for the transaction. For a CardPresent with PIN Data scenario, this field is required.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain a valid encrypted PIN block as per Visa specifications.</li>\n</ul>",
            "format": "binary"
          },
          "zoneKeyIndex": {
            "maximum": 99,
            "minimum": 0,
            "type": "integer",
            "description": "Indicates the Zone Key Index used for PIN encryption. For CardPresent transactions with PIN Data, this field is required.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain a valid Zone Key Index as per Visa specifications.</li>\n</ul>",
            "example": 1
          },
          "pinBlockFormatCode": {
            "maximum": 99,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies the format of the PIN block used in the transaction. For CardPresent transactions with PIN Data, this field is required.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain a valid PIN block format code as per Visa specifications.</li>\n</ul>",
            "example": 1
          }
        }
      },
      "Fees": {
        "type": "object",
        "properties": {
          "surcharge": {
            "$ref": "#/components/schemas/Surcharge"
          },
          "nationalReimbursementFee": {
            "$ref": "#/components/schemas/NationalReimbursementFee"
          }
        }
      },
      "AddressVerificationData-2": {
        "required": [
          "postalCode"
        ],
        "type": "object",
        "properties": {
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Postal code for address verification"
          },
          "streetName": {
            "type": "string",
            "description": "Street for address verification"
          }
        }
      },
      "ValidatePayoutWalletRequest-30": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/ValidateWalletTransactionDetail-8"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-29"
          }
        ]
      },
      "DeliveredDateTime": {
        "type": "string",
        "description": "Optional.\nApplicable for statuses PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK, when available.\n\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nExample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
        "format": "date-time"
      },
      "AddressVerificationData-1": {
        "required": [
          "postalCode"
        ],
        "type": "object",
        "properties": {
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Postal code for address verification"
          },
          "streetName": {
            "maxLength": 40,
            "minLength": 0,
            "type": "string",
            "description": "Street for address verification"
          }
        }
      },
      "CardVerificationRequest": {
        "required": [
          "initiatingPartyId",
          "requestId"
        ],
        "properties": {
          "requestId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RequestId"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "paymentInstrument": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentInstrument"
              }
            ]
          }
        }
      },
      "ClientDrivenConditionalFields": {
        "type": "array",
        "description": "This section contains field-sets that are required to be provided only in  select use cases. It is up to the client to determine whether these scenarios or use cases apply and provide the relevant data. Visa systems will only act as a pass through for this data. These fields may appear as \"facts\" in the conditions ID definitions.\n",
        "items": {
          "$ref": "#/components/schemas/ClientDrivenConditionsAndFields"
        }
      },
      "RecipientIndividual-13": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient, conditionally required when firstName and lastName are not provided",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-10"
          },
          "lastName": {
            "description": "Recipient last name, conditionally required when name is not provided\n\nISO20022 field name: Creditor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name, conditionally required when name is not provided\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          }
        }
      },
      "PayoutCardRequest": {
        "required": [
          "payoutMethod",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method e.g. To Card\n\nValid values:\n“C” – Visa Direct Card\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PullCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "properties": {
              "card": {
                "$ref": "#/components/schemas/PushCard"
              },
              "name": {
                "maxLength": 30,
                "minLength": 1,
                "type": "string"
              },
              "address": {
                "type": "object",
                "properties": {
                  "state": {
                    "maxLength": 3,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains the state or province (ISO 3166-2 subdivision) code of the recipient address.\nNote:\nIt is required for cross-border transactions either originating from or destined to Canada with recipientCountryCode of 840(USA) or 124(CAN).\nIt is also required for Push Payments transactions associated with Gateway Service when recipientCountryCode is either 124(CAN) or 840(USA). (Refer to Mastercard data processing requirements)\n"
                  }
                }
              },
              "occupation": {
                "maxLength": 35,
                "minLength": 1,
                "type": "string",
                "description": "Account Owner Occupation. Only alpha-numeric data is accepted"
              },
              "nationality": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO country code of nationality in alphabets."
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-2"
                  }
                ]
              }
            },
            "description": "recipient's detail including recipient card credential\n\nConditional:\n\nthis object is conditionally required for push card transaction\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "QueryErrorResponseWithKey": {
        "required": [
          "errorResponse"
        ],
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponseWithMandatoryFields"
              }
            ]
          }
        }
      },
      "RecipientIndividual-12": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient, conditionally required when firstName and lastName are not provided",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-9"
          },
          "lastName": {
            "description": "Recipient last name, conditionally required when name is not provided\n\nISO20022 field name: Creditor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name, conditionally required when name is not provided\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          }
        }
      },
      "202TransactionStatus": {
        "type": "string",
        "description": "- PENDING: Payout is accepted but has not been acknowledged\n",
        "enum": [
          "PENDING"
        ]
      },
      "RecipientIndividual-15": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-13"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "RecipientIndividual-14": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient, conditionally required when firstName and lastName are not provided",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-12"
          },
          "lastName": {
            "description": "Recipient last name, conditionally required when name is not provided\n\nISO20022 field name: Creditor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name, conditionally required when name is not provided\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "RecipientIndividual-11": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "RecipientIndividual-10": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient, conditionally required when firstName and lastName are not provided",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-8"
          },
          "lastName": {
            "description": "Recipient last name, conditionally required when name is not provided\n\nISO20022 field name: Creditor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name, conditionally required when name is not provided\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          }
        }
      },
      "OCTRecipientDetail-11": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/OCTRecipientCard"
          },
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of recipient's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of recipient's address"
              },
              "stateCode": {
                "maxLength": 3,
                "minLength": 1,
                "type": "string",
                "description": "State code of recipient's address"
              },
              "postalCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Postal code of recipient's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of recipient's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of recipient's address"
              },
              "subDivisionMinorCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Sub-division minor code of recipient's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTRecipientDetailAdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/PaymentCredentialReference"
          }
        },
        "description": "Recipient details for Original Credit Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "SettlementCurrencyCode-2": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Indicates the ISO 4217 currency code for the settlement amount. Format Must follow ISO 4217 standard.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid ISO 4217 currency code.</li>\n  <li>No spaces or special characters.</li>\n</ul>",
        "example": "USD"
      },
      "OCTRecipientDetail": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/OCTRecipientCard"
          },
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of recipient's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of recipient's address"
              },
              "stateCode": {
                "maxLength": 3,
                "minLength": 1,
                "type": "string",
                "description": "State code of recipient's address"
              },
              "postalCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Postal code of recipient's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of recipient's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of recipient's address"
              },
              "subDivisionMinorCode": {
                "maxLength": 16,
                "minLength": 1,
                "type": "string",
                "description": "Sub-division minor code of recipient's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTRecipientDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-1"
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/PaymentCredentialReference"
          }
        },
        "description": "Recipient details for Original Credit Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "OCTSenderDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "localNameData<br><br>This object is used to provide the sender's local name data. This object is required for transactions where the sender's local name data is required."
              },
              "value": {
                "$ref": "#/components/schemas/SenderLocalNameData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "contactInformationList<br><br>Contact Information list of sender.<br /><br />Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/ContactInformationList"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "ancillarySenderDetails<br><br>Ancillary sender details.<br><br>Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/AncillarySenderDetails"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "identificationNumberBusiness<br><br><b>Conditional.</b><br><br>This is an alphanumeric value that carries the sender's identification number issued to the sender by the government or an authorized national entity. This field is to be used if the sender is a business (e.g. Disbursements) <br><br>Note: If senderIdentificationNumberIndividual is not populated, then this field needs to be populated mandatorily for Brazil domestic transactions."
              },
              "value": {
                "maxLength": 20,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "identificationNumberIndividual<br><br>This is an alphanumeric value that carries the sender's identification number issued to the sender by the government or an authorized national entity or contains the customer’s VAT registration number for the individual tax identification. This field is to be used if the sender is an Individual (e.g. P2P payments), <br><br>Note: If senderIdentificationNumberBusiness is not populated, then this field needs to be populated mandatorily for Brazil domestic transactions.<br>If businessApplicationId has PS, then this field to be populated for Argentina domestic transaction."
              },
              "value": {
                "maxLength": 13,
                "minLength": 1,
                "type": "string"
              }
            }
          }
        ]
      },
      "VerificationPosData-1": {
        "type": "object",
        "properties": {
          "panEntryMode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "2-digit code that identifies the method used to enter the cardholder account number",
            "example": "01",
            "default": "01"
          },
          "motoECIIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Identifies the level of security used in an electronic commerce transaction",
            "example": "7"
          },
          "posConditionCode": {
            "type": "string",
            "description": "Code identifying transaction conditions at the point of sale or point of service",
            "example": "51",
            "default": "51"
          },
          "pointOfServiceCapability": {
            "type": "object",
            "properties": {
              "terminalType": {
                "type": "string",
                "description": "1-digit code identifies the basic POS electronic terminal category",
                "example": "1"
              },
              "terminalEntryCapability": {
                "type": "string",
                "description": "Recommended value for card not present is 5",
                "example": "5",
                "default": "5"
              }
            },
            "description": "For CardPresent Transactions, this field is required"
          },
          "specialConditionIndicatorMerchant": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Cryptocurrency indicator with the value of “7” can be used to identify the purchase of cryptocurrency, thereby providing greater visibility to the issuers.\n1 – Purchase of Central Bank Digital Currency (CBDC) or Tokenized Deposits\n2 – Purchase of Stablecoin (fiat-backed)\n3 – Purchase of Blockchain Native Token/Coin\n4 – Purchase of Non-Fungible Token (NFT)\n7* - Purchase of Cryptocurrency\n",
            "example": "7"
          }
        },
        "description": "Point of Service data for Verification check"
      },
      "SettlementCurrencyCode-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "ISO 4217 currency code for the settlement amount",
        "example": "USD"
      },
      "VerifyRecipientDetailRequest": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/VerifyRecipientWalletRequest"
          },
          {
            "$ref": "#/components/schemas/AccountVerificationRequest"
          }
        ]
      },
      "VerificationPosData-2": {
        "type": "object",
        "properties": {
          "panEntryMode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "2-digit code that identifies the method used to enter the cardholder account number",
            "example": "01",
            "default": "01"
          },
          "motoECIIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Identifies the level of security used in an electronic commerce transaction",
            "example": "7"
          },
          "posConditionCode": {
            "type": "string",
            "description": "Code identifying transaction conditions at the point of sale or point of service",
            "example": "51",
            "default": "51"
          },
          "pointOfServiceCapability": {
            "type": "object",
            "properties": {
              "terminalType": {
                "type": "string",
                "description": "1-digit code identifies the basic POS electronic terminal category",
                "example": "1"
              },
              "terminalEntryCapability": {
                "type": "string",
                "description": "Recommended value for card not present is 5",
                "example": "5",
                "default": "5"
              }
            },
            "description": "For CardPresent Transactions, this field is required"
          },
          "specialConditionIndicatorMerchant": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Cryptocurrency indicator with the value of \"7\" can be used to identify the purchase of cryptocurrency",
            "example": "7"
          }
        },
        "description": "Point of Service data for Verification check"
      },
      "AccountWalletSenderIndividual-1": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Ultimate Debtor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "RecipientTransactorDetail": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany"
          }
        ]
      },
      "FactObject": {
        "required": [
          "fact"
        ],
        "type": "object",
        "properties": {
          "fact": {
            "type": "string"
          }
        }
      },
      "TransactionAmount-1": {
        "multipleOf": 0.001,
        "maximum": 999999999.999,
        "minimum": 0,
        "type": "number",
        "description": "The amount of the transaction, inclusive of all fees assessed for the transaction, including currency conversion fees. If the originator is populating the surcharge or foreignExchangeFeeTransaction field, those values must be included in this amount.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>If a currency has three decimal places, the last digit of this field must be zero.</li>\n  <li>If a currency has 0 minor units, this field must carry no fractional points.</li>\n  <li>If a currency has 2 minor units, the field must carry a maximum of two fractional points.</li>\n</ul>",
        "format": "double",
        "example": 100
      },
      "InvalidPayoutResponse-10": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-1"
              }
            ]
          }
        }
      },
      "InvalidPayoutResponse-14": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          }
        }
      },
      "InvalidPayoutResponse-15": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "validationDetails": {
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-5"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "validationResultCode": {
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "CustomerReference": {
        "type": "string",
        "description": "Customer reference"
      },
      "SenderCard-1": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "expirationDate"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/PosData-2"
          },
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Conditional-Required to be sent along with \"PCI_TOKEN_REFID\""
          },
          "accountType": {
            "type": "string",
            "description": "This is used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.<br>00-Not applicable<br>10-Saving account<br>20-Checking account<br>30-Credit card account<br>40-Universal account",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "If type is PAYNAME then length should be between 6 and 50 characters.Format should be +payname.domain. The payname, between '+' and '.' characters, should be minimum 3 characters.<br> For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"merchantId\". <br>For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "schemeIdentifier": {
            "$ref": "#/components/schemas/SchemeIdentifier"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT",
              "ALIAS",
              "PCI_TOKEN_REFID",
              "PAYNAME"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/AuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData-2"
          }
        }
      },
      "InvalidPayoutResponse-12": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "validationDetails": {
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-5"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "validationResultCode": {
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "TransactionDetailMetadata": {
        "title": "TransactionDetail",
        "required": [
          "purposeOfPayment"
        ],
        "type": "object",
        "properties": {
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayments"
          }
        },
        "description": "TransactionDetail Object\n"
      },
      "GivUpdatedFlag-2": {
        "type": "string",
        "description": "Indicates whether the Guaranteed Interchange Value (GIV) has been updated in the current transaction response.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>Y</li>\n  <li>N</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Field is conditional based on GIV processing.</li>\n</ul>",
        "example": "Y"
      },
      "InvalidPayoutResponse-16": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          }
        }
      },
      "InvalidPayoutResponse-17": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference"
          }
        }
      },
      "GivUpdatedFlag-1": {
        "type": "boolean",
        "description": "This field carries a boolean flag to indicate Giv Updated state. Possible values are true or false\n"
      },
      "PullFundsInitNotification-1": {
        "required": [
          "accountId",
          "eventType",
          "fundingDetails",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "PULL_FUNDS_INITIATED"
            ]
          },
          "fundingDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FundingDetails-1"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "PullFundsInitNotification-2": {
        "required": [
          "accountId",
          "eventType",
          "fundingDetails",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "PULL_FUNDS_INITIATED"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "fundingDetails": {
            "items": {
              "$ref": "#/components/schemas/FundingDetails-2"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PullFundsInitNotification-3": {
        "required": [
          "accountId",
          "eventType",
          "fundingDetails",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "PULL_FUNDS_INITIATED"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "fundingDetails": {
            "items": {
              "$ref": "#/components/schemas/FundingDetails-3"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "CompanyRecipientIdentificationListWallet": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id \n* L-Legal Entity Registration Number \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "PullFundsInitNotification-4": {
        "required": [
          "accountId",
          "eventType",
          "fundingDetails",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "PULL_FUNDS_INITIATED"
            ]
          },
          "fundingDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FundingDetails-4"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "Bank": {
        "required": [
          "accountName",
          "accountNumber",
          "accountNumberType",
          "countryCode",
          "currencyCode"
        ],
        "type": "object",
        "properties": {
          "BIC": {
            "description": "recipient bank account Business Identifier Code (BIC)\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution BIC\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BIC"
              }
            ]
          },
          "bankCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account bank code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification\n",
            "example": "173"
          },
          "bankName": {
            "description": "Recipient's bank name\n\nISO20022 field name: Creditor Agent Financial Institution Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "branchCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account branch code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Branch Identification\n",
            "example": "123456"
          },
          "accountName": {
            "description": "recipient bank account name i.e. account holder name as recorded on recipient bank account\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountName"
              }
            ]
          },
          "accountType": {
            "type": "string",
            "description": "Recipient bank account type\n\n* `1` - Checking\n* `2` - Saving \n* `3` - Maestra\n* `4` - Vista\n* `5` - Loan\n* `6` - NRE\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Type\n",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5",
              "6"
            ]
          },
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "bankCodeType": {
            "type": "string",
            "description": "recipient bank account bank code type\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "enum": [
              "ABA",
              "SORT_CODE",
              "DEFAULT"
            ]
          },
          "currencyCode": {
            "description": "recipient bank account currency code\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "accountNumber": {
            "description": "recipient bank account number\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountNumber"
              }
            ]
          },
          "accountNumberType": {
            "type": "string",
            "description": "recipient bank account number type. Valid values: \"IBAN\", \"ALIAS\" and \"DEFAULT\"\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "ALIAS",
              "DEFAULT"
            ]
          }
        },
        "description": "Recipient's bank object\n\nConditional object when payoutMethod has value 'B'\n"
      },
      "QuoteId": {
        "type": "integer",
        "description": "This is a unique FX quote ID generated by Visa for a payout currency pair.\n",
        "format": "int64",
        "example": 987654321
      },
      "CityOfBirth": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "This field should contain recipient’s city of birth.",
        "example": "Mumbai"
      },
      "AFTRSenderCard": {
        "required": [
          "accountNumber",
          "accountType"
        ],
        "type": "object",
        "properties": {
          "accountType": {
            "type": "string",
            "description": "Used to identify the account type of the recipientPrimaryAccountNumber in the request. Possible values: 00 (Not applicable), 10 (Saving account), 20 (Checking account),  30 (Credit card account), 40 (Universal account). Default is set to \"00\" if not provided.\n",
            "example": "30",
            "default": "00",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string",
            "description": "Account number of the sender's card.",
            "example": "4111111111111111"
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "systemTraceAuditNumber": {
            "maxLength": 6,
            "minLength": 6,
            "type": "string",
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set transmissionDateTime.\n",
            "example": "123456"
          },
          "retrievalReferenceNumber": {
            "pattern": "^[0-9]{12}$",
            "type": "string",
            "description": "This is a unique identifier generated by Visa for a card transaction. The format is ydddhhnnnnnn. yddd - The first four digits must be a valid Julian date format, where the first digit = 0-9  (last digit of current year) and the next three digits = 001-366 (number of the day in the year). hh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. nnnnnn - can be the systemsTraceAuditNumber or any 6 digit number.\n",
            "example": "3366121234567"
          }
        },
        "description": "Card details for the sender in an Account Funding Transaction Reversal"
      },
      "QueryNetworkResponse": {
        "required": [
          "actionCode",
          "approvalCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "maxLength": 1,
                "type": "string",
                "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them."
              }
            }
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN)"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode"
          },
          "chipCardData": {
            "maxLength": 510,
            "minLength": 2,
            "type": "string",
            "description": "A blob containing the Chip card data in TLV format",
            "example": "8201495F2A0201245F34010182021C008407A0000000031010950580000000009A031102249B0268009C01009F02060000000000009F03060000000000009F0607A00000000310109F0802008C9F0902008C9F100706010A039000009F1A0201249F2608423158936ED6C38F9F2701809F3303E0B0C89F34034103029F3501229F360200019F3704ACAC66E89F5800DF0100DF0200DF0400"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "Provider of the PFX exchange rate"
              }
            }
          },
          "dcapIndicator": {
            "$ref": "#/components/schemas/DcapIndicator"
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "prepaidBalance": {
            "type": "string",
            "description": "Min Inclusive: -999999999.999<br><br>Max Inclusive: 999999999.999<br><br>Note: Applicable only for Top Up Transactions"
          },
          "supplementalData": {
            "type": "object",
            "properties": {
              "dafIndicator": {
                "maxLength": 5,
                "type": "string",
                "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.<br/>Possible values are true or false"
              }
            }
          },
          "customerReference": {
            "maxLength": 17,
            "type": "string",
            "description": "<b>Conditional</b><br><br>This field contains a value that identifies the customer."
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "responseReasonCode": {
            "maxLength": 4,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant advice code value received from Mastercard authorization response messages."
          },
          "riskAssessmentResults": {
            "type": "object",
            "properties": {
              "exemptionReasonCode": {
                "type": "array",
                "description": "One or more instances of reason codes that explain why an exemption was not honored.<br><br>Valid Values :<br>8A01 = Merchant not participating in Visa Delegated Authentication Program<br>8A02 = Issuer not participating in Visa Delegated Authentication Program<br>8A04 = Indeterminate or invalid issuer response<br>8A06 = Did not meet exemption criteria (Visa determined)<br>8A07 = VMID invalid for service<br>8A08 = CAVV invalid value<br>8A76 = Did not meet delegation criteria (Issuer supplied)<br>8473 = Cardholder has not trusted the merchant (issuer supplied)<br>8474 = Did not meet the exemption criteria (issuer supplied)<br>8976 = Did not meet exemption criteria (issuer supplied)<br><br>This field is present in API response only if any of the SCA exemptions were claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34, Dataset ID 4A- Tag 8C.",
                "items": {
                  "maxLength": 4,
                  "minLength": 4,
                  "type": "string"
                }
              },
              "scpExemptionIndicator": {
                "type": "string",
                "description": "Secure Corporate Payment (SCP) Indicator.<br><br>Valid Values :<br>HONORED - Secure corporate payment exemption validated/honored<br>NOT_HONORED-Secure corporate payment exemption failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 88."
              },
              "traExemptionIndicator": {
                "type": "string",
                "description": "Transaction Risk Analysis (TRA) Exemption Indicator.<br><br>Valid Values :<br>HONORED - Transaction risk analysis exemption validated/honored<br>NOT_HONORED - Transaction risk analysis exemption failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 89."
              },
              "lowValueExemptionIndicator": {
                "type": "string",
                "description": "This field is present in API response only if the following conditions are met. <br> <br>-  optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request. <br><br>-  Low Value exemption was claimed in the acquirer request (OR) Issuer chooses to approve the transaction as the amount was below the issuer set low value and velocity counts limits<br><br>Valid Values :<br>HONORED - Low value exemption validated/honored<br>NOT_HONORED - Low value exemption failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 87."
              },
              "delegatedAuthenticationIndicator": {
                "type": "string",
                "description": "Delegated Authentication Indicator.<br><br>Valid Values :<br>HONORED - Delegated authentication request validated/honored<br>NOT_HONORED - Delegated authentication request failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 8A."
              },
              "trustedMerchantExemptionIndicator": {
                "type": "string",
                "description": "Trusted Merchant Exemption Indicator.<br><br>Valid Values :<br>HONORED - Trusted merchant exemption validated/honored<br>NOT_HONORED - Trusted merchant exemption failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 84."
              }
            },
            "description": "This object is present in the response only if the issuer supports SCA exemptions."
          },
          "prepaidBalanceCurrency": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code for prepaid balance"
          },
          "reimbursementAttribute": {
            "maxLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>If AFT transaction has qualified for CPS then this field contains a code that identifies the applicable interchange reimbursement fee. Possible values are : A (Payment Service Interchange Reimbursement Fee (PSIRF) U.S.).<br>Please reach out to your Visa representative for details."
          },
          "cardVerificationResults": {
            "type": "object",
            "properties": {
              "cavvResultCode": {
                "$ref": "#/components/schemas/CavvResultCode"
              },
              "cvv2ResultCode": {
                "$ref": "#/components/schemas/Cvv2ResultCode"
              }
            }
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results. Refer to cardAuthenticationResults"
          },
          "integratedCircuitCardData": {
            "maxLength": 510,
            "minLength": 2,
            "type": "string",
            "description": "A blob containing the Chip card data in TLV format.",
            "example": "8201495F2A0201245F34010182021C008407A0000000031010950580000000009A031102249B0268009C01009F02060000000000009F03060000000000009F0607A00000000310109F0802008C9F0902008C9F100706010A039000009F1A0201249F2608423158936ED6C38F9F2701809F3303E0B0C89F34034103029F3501229F360200019F3704ACAC66E89F5800DF0100DF0200DF0400"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "transactionLinkIdentifier": {
            "maxLength": 36,
            "minLength": 1,
            "type": "string",
            "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse"
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the Address Verification Service (AVS) validation for the Primary Account Number. <br>Refer to addressVerificationResults",
            "example": "string"
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "type": "string",
            "description": "<b>Conditional</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer's VAT registration number for tax identification."
          },
          "recipientIdentificationNumberBusiness": {
            "maxLength": 20,
            "type": "string",
            "description": "Unique identifier for the recipient business. This is used to identify the business recipient in the system."
          },
          "masterCardElectronicCommerceIndicators": {
            "maxLength": 19,
            "minLength": 7,
            "type": "string",
            "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions."
          },
          "recipientIdentificationNumberIndividual": {
            "maxLength": 13,
            "type": "string",
            "description": "Unique identifier for the recipient individual. This is used to identify the recipient in the system."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Request for CPS authorization. If present, a valid value is required. Spaces or special characters are not allowed. Possible values are : Y (Transaction requests participation)<br><br><b>Note: </b>Supported only in US for CPS (Custom Payment Service).<br><br>This field is required for the transaction to qualify for CPS qualified Interchange rates and to avoid the Transaction Integrity Fee.<br><br>Please reach out to your Visa representative for details."
          }
        }
      },
      "PaymentFacilitatorState-1": {
        "maxLength": 3,
        "minLength": 1,
        "type": "string",
        "description": "Specifies the state or province of the payment facilitator's registered address. This helps validate the facilitator's location for compliance and transaction routing.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the official state or province name or abbreviation as per the facilitator's registration details.</li>\n</ul>",
        "example": "TX (Texas)"
      },
      "SenderContactNumberType": {
        "type": "string",
        "description": "Sender contact number type.",
        "example": "MOBILE",
        "enum": [
          "HOME",
          "WORK",
          "MOBILE",
          "FAX",
          "PAGER",
          "OTHER"
        ]
      },
      "ReimbursementAttribute-1": {
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nIf AFT transaction has qualified for CPS then this field contains a code that identifies the applicable interchange reimbursement fee. Please reach out to your Visa representative for details.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>A – Payment Service Interchange Reimbursement Fee (PSIRF) U.S.</li>\n</ul>",
        "example": "A"
      },
      "AccountRecipientTypeIsUnspecified": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Recipient company name. Full name is conditionally required when \"firstName\" and \"lastName\" are not provided. <br>Must have at least 3 chars<br>Must not contain exclusively numeric characters<br>Must not contain special symbols<br> <table>  <tr>  <td>!</td><td>\"</td><td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FullNameInUnspecifiedIdentityType"
              }
            ]
          },
          "type": {
            "type": "string",
            "description": "Identifies the type of recipient - \"U\" for Unspecified(whether Individual or Company).\n",
            "enum": [
              "U"
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress"
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/UnspecifiedTypeRecipientIdentificationListAccountWallet"
          }
        }
      },
      "PaymentFacilitatorCountry": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "3-digit numeric or 3-character alpha ISO country code <br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
        "example": "840 USA"
      },
      "OriginatorId": {
        "maxLength": 15,
        "minLength": 1,
        "type": "string",
        "description": "An alphanumeric field that uniquely identifies the Originating Entity for Push to Account transactions. The Orignating Entity should populate Card Acceptor ID (CAID)  for Push to Card transactions. \n\nISO20022 field name: Debtor - Originating Entity Identification\n",
        "example": "1234567890"
      },
      "WalletAdditionalDetails": {
        "type": "object",
        "properties": {
          "shareLink": {
            "maximum": 512,
            "type": "string",
            "description": "An optional field that includes a URL (shareLinkURL) directing the sender to WeChat, where they can view the transaction status. The link can be shared with the recipient to prompt them to fulfill any requirements for receiving their funds. <br />Currently, this is applicable only for Visa Direct wallet payments to the WeChat wallet operator.\n"
          }
        }
      },
      "FeeProgramIndicator-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Indicates the fee program associated with the transaction. This field identifies which fee structure or program applies to the transaction for settlement and reporting purposes.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>If present, a valid value is required.</li>\n  <li>Spaces or special characters are not allowed.</li>\n</ul>",
        "example": "FPI"
      },
      "CardAcceptorId": {
        "maxLength": 15,
        "minLength": 1,
        "type": "string",
        "description": "Card acceptor identifier",
        "example": "CACID12345"
      },
      "PayoutReceivedAfter202InSendPayout-11": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed-3"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-6"
                  }
                ]
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutReceivedAfter202InSendPayout-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-5"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus-1"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ],
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed-2"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "QueryServiceDetail": {
        "properties": {
          "traceable": {
            "type": "boolean",
            "description": "Indicates if a payout transaction is traceable"
          },
          "recallable": {
            "type": "boolean",
            "description": "Indicates if a payout transaction is recallable"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rail used for the payout transaction",
            "enum": [
              "ACH",
              "RTP",
              "RTGS",
              "SWIFT"
            ]
          },
          "isFinalStatus": {
            "type": "boolean",
            "description": "Only populated at PAYMENT_SENT status, indicates whether that is the final status provided by network partner.\n"
          }
        }
      },
      "AuthenticationData-1": {
        "type": "object",
        "properties": {
          "cavv": {
            "maxLength": 40,
            "minLength": 40,
            "type": "string",
            "description": "Cardholder authentication verification value"
          },
          "cvv2": {
            "maxLength": 4,
            "minLength": 1,
            "type": "string",
            "description": "Specifies the Card Verification Value 2 (CVV2) associated with the sender's card. This value is used for authentication and fraud prevention during card-based transactions.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain the CVV2 value printed on the card.</li>\n  <li>Length must be 3 or 4 digits depending on card type.</li>\n</ul>",
            "example": "123"
          },
          "tavv": {
            "maxLength": 40,
            "minLength": 40,
            "type": "string",
            "description": "Transaction authentication verification value"
          }
        }
      },
      "PayoutReceivedAfter202InSendPayout-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-4"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus-1"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ],
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed-1"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-5"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AFTTransactionDetail-16": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTTransactionDetailAdditionalData"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "description": "<ul><li>Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the sender.</li><li>For Cross-border, originator can use this field for its chosen currency or the sender's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*.</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode. <br><b>*Note:</b> This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "PayoutReceivedAfter202InSendPayout-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutReceivedAfter202InSendPayout-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AFTTransactionDetail-18": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTTransactionDetailAdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "description": "<ul><li>Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the sender.</li><li>For Cross-border, originator can use this field for its chosen currency or the sender's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*.</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode. <br><b>*Note:</b> This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "PaymentFacilitatorPostalCode": {
        "maxLength": 10,
        "minLength": 4,
        "type": "string",
        "description": "Postal code of the payment facilitator",
        "example": "12345"
      },
      "PayoutReceivedAfter202InSendPayout-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutReceivedAfter202InSendPayout-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutReceivedAfter202InSendPayout-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction, only received in 202\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. Only happens in 202.\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_RECEIVED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for the original payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "$ref": "#/components/schemas/PayoutSpeed"
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the destination currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Transaction Information And Status - Remitted Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Transaction Information And Status - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "UnspecifiedTypeRecipientIdentificationListAccountWallet": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/UnspecifiedIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "QueryResponseData-8": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail-2"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-9"
          }
        },
        "description": "Query response data structure"
      },
      "QueryResponseData-9": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-11"
          }
        },
        "description": "Query response data structure"
      },
      "QueryResponseData-7": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-9"
          }
        },
        "description": "Query response data structure"
      },
      "QueryResponseData-4": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-6"
          }
        },
        "description": "Query response data structure"
      },
      "QueryResponseData-5": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-3"
          }
        },
        "description": "Query response data structure"
      },
      "ClientReferenceId-1": {
        "maxLength": 12,
        "minLength": 12,
        "type": "string",
        "description": "Client-generated unique transaction identifier used for reference purposes, similar to retrievalReferenceNumber"
      },
      "QueryResponseData-2": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-2"
          }
        },
        "description": "Query response data structure"
      },
      "QueryResponseData-3": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-4"
          }
        },
        "description": "Query response data structure"
      },
      "PointOfServiceData": {
        "type": "object",
        "properties": {
          "panEntryMode": {
            "type": "number",
            "description": "Required for Card Present Transfer\n\nA 2-digit code that identifies the method used to enter the cardholder account number and card expiration date. This code specifies whether the entire magnetic stripe is included in an authorization or financial request.\n\nRecommended value for card/token verification for Card not present transactions is 01. Default value is 01.\n\nRefer to PAN Entry Mode Codes (https://developer.visa.com/request_response_codes#pan_entry_mode_codes)             \n"
          },
          "posEnvironment": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b> For Merchant initiated pull transactions."
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "number",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7\n"
          },
          "posConditionCode": {
            "type": "number",
            "description": "Required for Card Present Transfer\n\nContains a code identifying transaction conditions at the point of sale or point of service. For messages that follow an original request, this code identifies the type of processing being done.\n\nRecommended value for Address/cvv2/account verification without authorization is 59. Default value is 59.\n\nRefer to POS Condition Codes (https://developer.visa.com/request_response_codes#pos_cond_code_codes)              \n"
          },
          "specialConditionIndicatorMerchant": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Cryptocurrency indicator with the value of “7” can be used to identify the purchase of cryptocurrency, thereby providing greater visibility to the issuers."
          }
        },
        "description": "<b>Conditional</b>\n\nRequired for Card Present Transfer\n\nContains a code identifying transaction conditions at the point-of-sale or point of service. For messages that follow an original request, this code identifies the type of processing being done.\nNote: For a CardPresent or Token Transactions, this field is required. \nIf this Object is not passed in the request then API will default at following values: \n\"pointOfServiceData\": { \"panEntryMode\": \"01\",\"posConditionCode\": \"59\",\"motoECIIndicator\":\"7\"}\"\n"
      },
      "QueryResponseData-1": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/QueryOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/QueryTransactionDetail-1"
          }
        },
        "description": "Query response data structure"
      },
      "ValidatePayoutResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/ValidPayoutWithNetworkResponse"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "DigitalAssetQueryErrorResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR                -"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "CardAcceptorCustomerServicePhoneNumber": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "Customer service phone number of the card acceptor",
        "example": "+0987654321"
      },
      "AFTTransactionDetail-11": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "posData",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "$ref": "#/components/schemas/AFTTransactionFees"
          },
          "posData": {
            "$ref": "#/components/schemas/AFTTransactionPosData"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTTransactionDetailAdditionalData"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/RoutingNetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionCurrencyCode": {
            "description": "<ul><li>Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the sender.</li><li>For Cross-border, originator can use this field for its chosen currency or the sender's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*.</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode. <br><b>*Note:</b> This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          },
          "originalTransactionIdentifier": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          }
        }
      },
      "LedgerNotification-6": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "LedgerNotification-5": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "OperatorName": {
        "type": "string",
        "description": "Wallet operator enumerated names.",
        "example": "WECHATPAY"
      },
      "LedgerNotification-8": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "LedgerNotification-7": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "QueryResponse-11": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-10"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse"
          }
        ]
      },
      "DigitalAssetRecipientTransactorDetailWithID-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsIndividual-8"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsCompany-3"
          }
        ],
        "exampleSetFlag": false
      },
      "SenderMiddleName": {
        "maxLength": 35,
        "minLength": 2,
        "type": "string",
        "description": "Sender middle name or middle initial when sender is an individual",
        "example": "Robert"
      },
      "LedgerNotification-2": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "QueryResponse-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-7"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse"
          }
        ]
      },
      "DigitalAssetRecipientTransactorDetailWithID-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsIndividual-9"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsCompany-4"
          }
        ],
        "exampleSetFlag": false
      },
      "LedgerNotification-1": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "LedgerNotification-4": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "LedgerNotification-3": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "WalletTransactionDetail": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "DigitalAssetRecipientTransactorDetailWithID-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsIndividual-1"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsCompany-1"
          }
        ]
      },
      "DigitalAssetRecipientTransactorDetailWithID-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsIndividual-2"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsCompany-2"
          }
        ]
      },
      "DigitalAssetQueryPendingCancelledResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "AFTRTransactionDetail-12": {
        "required": [
          "id",
          "idType",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "card": {
            "type": "object",
            "properties": {
              "posData": {
                "$ref": "#/components/schemas/PosData"
              }
            }
          },
          "fees": {
            "$ref": "#/components/schemas/Fees"
          },
          "idType": {
            "$ref": "#/components/schemas/IdType-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTRTransactionDetailAdditionalData-1"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionCurrencyCode": {
            "description": "Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          }
        },
        "description": "Transaction details for Account Funding Transaction Reversal"
      },
      "QueryResponse-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-10"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse-9"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse-11"
          }
        ]
      },
      "CardAcceptorAdditionalContactDetails": {
        "maxLength": 256,
        "minLength": 1,
        "type": "string",
        "description": "Additional contact details of the card acceptor"
      },
      "PullFundsNotReceivedNotification-3": {
        "required": [
          "accountId",
          "eventType",
          "fundingDetails",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "PULL_FUNDS_NOT_RECEIVED"
            ]
          },
          "fundingDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FundingDetailsFundsNotReceived-3"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "PreviousStatus-1": {
        "description": "Indicates the currency's previous status, if applicable. Only two values are allowed <br />\nENABLED – payouts in this currency were allowed. <br />\nDISABLED – payouts in this currency were not allowed.\n",
        "example": "ENABLED",
        "enum": [
          "ENABLED",
          "DISABLED"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "PullFundsNotReceivedNotification-2": {
        "required": [
          "accountId",
          "eventType",
          "fundingDetails",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "PULL_FUNDS_NOT_RECEIVED"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "fundingDetails": {
            "items": {
              "$ref": "#/components/schemas/FundingDetailsFundsNotReceived-2"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PullFundsNotReceivedNotification-1": {
        "required": [
          "accountId",
          "eventType",
          "fundingDetails",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "PULL_FUNDS_NOT_RECEIVED"
            ]
          },
          "fundingDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FundingDetailsFundsNotReceived-1"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "VplContact-1": {
        "description": "Contact information for VPL Client Support.",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "BankId": {
        "maximum": 99999999999,
        "minimum": 100000,
        "maxLength": 11,
        "minLength": 6,
        "type": "integer",
        "description": "Originating bank ID is the Bank Identification Number (BIN) assigned to each Visa Member upon enrollment. If the Originator is not a Financial Institution (FI) and will be processing using a sponsor FI (i.e. Acquirer ) , this is the BIN of the sponsoring FI (Acquirer). It uniquely identifies the Bank/FI that is sponsoring the Originating Entity in Visa’s core system. \n\nNote: This is also referred to as the “Acquiring BIN” by Visa\n\nISO20022 field name: Debtor Agent FI Identification\n",
        "example": 408999
      },
      "PayoutToAccountRequest": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID"
              }
            ]
          }
        }
      },
      "ServiceLocationState-1": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field contains the ISO code of the State/Province or country subdivision where the cardholder received the services. This field is required for all MasterCard transactions.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Alphabetic only.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the official state or province abbreviation as per registration details.</li>\n  <li>Required only when the transaction meets MasterCard conditional requirements.</li>\n  <li>This field is required for all MasterCard transactions.</li>\n</ul>",
        "example": "TX"
      },
      "LedgerNotification-9": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "NonPayoutFieldDefinition": {
        "required": [
          "$ref",
          "name"
        ],
        "type": "object",
        "properties": {
          "$ref": {
            "type": "string",
            "description": "This refers to a JSON Schema definition within the document"
          },
          "name": {
            "type": "string",
            "description": "Name of a field that is only present in Metadata API request. It is not a payout field."
          }
        }
      },
      "ClientReferenceId-3": {
        "maxLength": 12,
        "minLength": 12,
        "type": "string",
        "description": "A value used to tie together service calls related to a single financial transaction. When passing Account Funding Transaction (AFT) and an Original Credit Transaction (OCT) methods, this value must differ between the two methods. When passing the Account Funding Transaction Reversal (AFTR) method, this value must match the retrievalReferenceNumber previously passed with the AFT method for this transaction. Recommended Format : ydddhhnnnnnn The first fours digits must be a valid yddd date in the Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). hh can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. nnnnnn can be the systemsTraceAuditNumber or any 6 digit number.",
        "example": "523412123456"
      },
      "ClientReferenceId-2": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Identifier assigned by the Originating Entity to uniquely identify the transaction.\n\nISO20022 field name: Transaction Information And Status - Original Transaction Identification\n\nOnly alphanumeric and '-' characters are allowed.\n"
      },
      "ClientReferenceId-4": {
        "maxLength": 35,
        "minLength": 1,
        "description": "Identifier assigned by the Originating Entity to uniquely identify the transaction.\n\nISO20022 field name: Transaction Identification\n\nOnly alphanumeric and '-' characters are allowed.\n",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "AccountVerificationDetail": {
        "properties": {
          "bankCode": {
            "description": "Bank code associated with the verified account, if returned by the account verification service provider.",
            "extensions": {
              "nullable": true
            },
            "exampleSetFlag": false,
            "types": [
              "string"
            ],
            "nullable": true
          },
          "nameMatch": {
            "$ref": "#/components/schemas/nameMatch-2"
          },
          "accountType": {
            "description": "Type of account, if returned by the account verification service provider.",
            "extensions": {
              "nullable": true
            },
            "exampleSetFlag": false,
            "types": [
              "string"
            ],
            "nullable": true
          },
          "currencyCodes": {
            "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.\n",
            "example": [
              "USD",
              "GBP",
              "EUR"
            ],
            "items": {
              "$ref": "#/components/schemas/AlphaCurrencyCode-2"
            },
            "exampleSetFlag": true,
            "types": [
              "array"
            ]
          },
          "bankAccountName": {
            "description": "Field to indicate the actual name of the accountholder (if provided by account verification service provider).\n",
            "example": "John Doe",
            "extensions": {
              "nullable": true
            },
            "exampleSetFlag": true,
            "types": [
              "string"
            ],
            "nullable": true
          },
          "verificationDetails": {
            "properties": {
              "code": {
                "description": "Response/error code to convey to client what went wrong in case of COMPLETED and account not matched and NOT_COMPLETED as well.",
                "example": "2100",
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              },
              "message": {
                "description": "Message corresponding to the above code.",
                "example": "Account identifier does not match",
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              },
              "location": {
                "description": "To share the location.",
                "example": "Server A",
                "extensions": {
                  "nullable": true
                },
                "exampleSetFlag": true,
                "types": [
                  "string"
                ],
                "nullable": true
              }
            },
            "extensions": {
              "nullable": true
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ],
            "nullable": true
          },
          "accountIdentifierMatch": {
            "description": "Indicates if the account identifier provided matches the recipient's bank account identifier found.\n- YES: Match\n- NO: No Match\n",
            "enum": [
              "YES",
              "NO"
            ],
            "extensions": {
              "nullable": true
            },
            "exampleSetFlag": false,
            "types": [
              "string"
            ],
            "nullable": true
          },
          "bankAccountHolderLastName": {
            "description": "Last name of the account holder, if returned by the account verification service provider.",
            "extensions": {
              "nullable": true
            },
            "exampleSetFlag": false,
            "types": [
              "string"
            ],
            "nullable": true
          },
          "bankAccountHolderFirstName": {
            "description": "First name of the account holder, if returned by the account verification service provider.",
            "extensions": {
              "nullable": true
            },
            "exampleSetFlag": false,
            "types": [
              "string"
            ],
            "nullable": true
          },
          "bankAccountNameTranslation": {
            "description": "Account HolderName Translated from the source language to english.\n",
            "example": "Wang Li",
            "extensions": {
              "nullable": true
            },
            "exampleSetFlag": true,
            "types": [
              "string"
            ],
            "nullable": true
          }
        },
        "description": "This object is only present if verificationStatus is COMPLETED",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "SenderAccountNumber": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "Conditional - This field is Mandatory if a senderReferenceNumber is not sent. <br />\nNote:\nClient should provide either a sender reference number or a sender account number but not both.\nClient should not send any PANs in this field for payout.\n",
        "example": "A42434234S324234"
      },
      "RecipientReferenceNumber": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "Reference number of the recipient"
      },
      "PayoutFieldDefinitionForCurrencyCode": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutFieldDefinition"
          },
          {
            "type": "object",
            "properties": {
              "currencyExponent": {
                "pattern": "^(0|2|3|4)$",
                "type": "string",
                "description": "This field will only be present when the \"name\" parameter in this object contains the value \"currencyCode\" or contains the JSONPath that points to a currency code field in Send Payout API. If present, this field will state the number of decimal places or minor-units allowed (per ISO 4217) for the referenced currency code."
              }
            }
          }
        ]
      },
      "WalletTransactionDetail-8": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-3"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "$ref": "#/components/schemas/StatementNarrative"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "WalletTransactionDetail-7": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-2"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-2"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel-1"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-2"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-5"
              }
            ],
            "exampleSetFlag": false
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-4"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-3"
              }
            ],
            "exampleSetFlag": false
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "200CancelCardTransactionStatus": {
        "type": "string",
        "description": "- PAYMENT_RETURNED: Visa has reverted the card payout instruction, fund is returned\n- PAYMENT_DECLINED: Visa has declined the card payout instruction, fund is not moved\n- PAYMENT_ERROR: Visa encountered error when processing the card payout instruction, fund is in unknown state\n",
        "enum": [
          "PAYMENT_DECLINED",
          "PAYMENT_RETURNED",
          "PAYMENT_ERROR"
        ]
      },
      "PurposeOfPayment": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
        "example": "ISBEXP"
      },
      "DateOfBirth-2": {
        "type": "string",
        "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\"). ISO20022 field name: Creditor Birth Date.\n",
        "format": "date"
      },
      "DateOfBirth-1": {
        "type": "string",
        "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\"). ISO20022 field name: Creditor Birth Date.\n",
        "format": "date"
      },
      "UrlAddress": {
        "maxLength": 256,
        "minLength": 1,
        "type": "string",
        "description": "URL address of the card acceptor",
        "example": "https://www.acmecorp.com"
      },
      "CardAcceptorContactInformation-1": {
        "type": "object",
        "properties": {
          "phoneNumber": {
            "$ref": "#/components/schemas/CardAcceptorPhoneNumber-1"
          },
          "additionalContactDetails": {
            "$ref": "#/components/schemas/CardAcceptorAdditionalContactDetails-1"
          },
          "customerServicePhoneNumber": {
            "$ref": "#/components/schemas/CardAcceptorCustomerServicePhoneNumber-1"
          }
        }
      },
      "AdjustmentTransactionDetailAdditionalData": {
        "anyOf": [
          {
            "title": "argentinaNationalServiceData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "argentinaNationalServiceData<br><br>Settlement Service Data object for Argentina required if transaction indicates Argentina national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/ArgentinaNationalServiceData"
              }
            }
          },
          {
            "title": "mexicoNationalServiceData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "mexicoNationalServiceData<br><br>Settlement Service Data object for Mexico required if transaction indicates Mexico national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/MexicoNationalServiceData"
              }
            }
          },
          {
            "title": "digitalWalletProviderId",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "digitalWalletProviderId<br><br><b>Optional.</b><br><br>Used to identify the digital wallet provider. V.I.P. does not edit the field; it also does not send it to the issuer processor nor does it return this field in the response."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "dynamicCurrencyConversionIndicator",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "dynamicCurrencyConversionIndicator<br><br><b>Optional.</b><br><br>Used to indicate if the merchant or the ATM acquirer has performed Dynamic Currency Conversion (DCC)."
              },
              "value": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "rewardProgramIdentificationCode",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "rewardProgramIdentificationCode<br><br><b>Optional.</b><br><br>Used to identify the reward program."
              },
              "value": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string"
              }
            }
          }
        ]
      },
      "DigitalAssetWalletTransactionDetail": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          }
        }
      },
      "BooleanExpression": {
        "required": [
          "fact",
          "operator",
          "value"
        ],
        "type": "object",
        "properties": {
          "fact": {
            "type": "string",
            "description": "JSON Path to a key field used in Send Payout API validations. These fields are defined in the routeDefiningFields[], conditionDefiningFields[] and clientDrivenConditionalFields[] sections of this file."
          },
          "value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "integer"
              },
              {
                "$ref": "#/components/schemas/Array"
              },
              {
                "$ref": "#/components/schemas/FactObject"
              }
            ]
          },
          "operator": {
            "type": "string",
            "enum": [
              "equal",
              "in",
              "notEqual",
              "greaterThan",
              "greaterThanInclusive",
              "lessThan",
              "lessThanInclusive",
              "notIn",
              "contains",
              "doesNotContain"
            ]
          }
        }
      },
      "CardEligibilityCheckResponse": {
        "required": [
          "eligibiltyStatus",
          "requestId"
        ],
        "type": "object",
        "properties": {
          "requestId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RequestId"
              }
            ]
          },
          "eligibiltyStatus": {
            "type": "string",
            "description": "Elibility status\n",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED"
            ]
          },
          "cardEligibilityResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardEligibilityResult"
              }
            ]
          }
        }
      },
      "SenderIdentificationList-3": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/SenderIdentification-1"
        }
      },
      "SenderIdentificationList-2": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdType-2"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "SenderIdentificationList-1": {
        "required": [
          "idNumber",
          "idType"
        ],
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/SenderIdentification"
        }
      },
      "SenderIdentificationList-7": {
        "required": [
          "idNumber",
          "idType"
        ],
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/SenderIdentification-1"
        }
      },
      "SenderIdentificationList-6": {
        "required": [
          "idNumber",
          "idType"
        ],
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/SenderIdentification-2"
        }
      },
      "SenderIdentificationList-4": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nValid values : \n* P- Passport \n* D-Driving License\n* N-National Id\n* T-Tax Id\n* L-Legal Entity Registration Number\n* F-Foreign Id\n\nISO20022 field name: Ultimate Debtor Identification Code\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdType"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Identification\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Identification Issuer Country\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "LastName-1": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Last name of the recipient"
      },
      "SenderIdentificationList-9": {
        "required": [
          "idNumber",
          "idType"
        ],
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/SenderIdentification-1"
        }
      },
      "SenderIdentificationList-8": {
        "required": [
          "idNumber",
          "idType"
        ],
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/SenderIdentification-1"
        }
      },
      "LastName-2": {
        "maxLength": 35,
        "minLength": 1,
        "description": "Required when recipient is an individual.",
        "example": "Anderson",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "ReturnedTransactionStatus": {
        "type": "string",
        "description": "- RETURNED: Returned request is refunded to Originating Entity\n- REJECTED: Rejected request is refunded to Originating Entity\n",
        "enum": [
          "RETURNED",
          "REJECTED"
        ]
      },
      "ReturnReasonCodeComment": {
        "maxLength": 255,
        "minLength": 1,
        "type": "string",
        "description": "comment for the action"
      },
      "SenderLastName": {
        "maxLength": 35,
        "minLength": 2,
        "type": "string",
        "description": "Sender last name. Conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters. Must not contain exclusively numeric characters. Must not contain special symbols.\n",
        "example": "Smith"
      },
      "202AccountPayoutCreatedResponse-1": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/202TransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "202AccountPayoutCreatedResponse-2": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/202TransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "CurrencyDetails": {
        "required": [
          "currencyCode",
          "currentStatus",
          "reason"
        ],
        "type": "object",
        "properties": {
          "reason": {
            "$ref": "#/components/schemas/CurrencyInfoReason"
          },
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode"
          },
          "currentStatus": {
            "$ref": "#/components/schemas/CurrentStatus"
          },
          "previousStatus": {
            "$ref": "#/components/schemas/PreviousStatus"
          },
          "lastModifiedDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "RouteDefinitionChangePerCountryClusterAndCurrency": {
        "required": [
          "metadataVersion",
          "metadataVersionDate",
          "notificationId",
          "notificationType",
          "payoutMethod",
          "recipientCountryCluster",
          "recipientCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Payout method code. Valid value is B- bank.\n",
            "enum": [
              "B"
            ]
          },
          "notificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique identifier for the notification.\n",
            "example": "58e0a7d7-eebc-11d8-9669-0800200c9a66"
          },
          "metadataVersion": {
            "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
            "type": "string",
            "description": "This is the version of the updated route definition. \nIt is in the format <major-version>.<minor-version>.<patch>.\n\n* patch updates are documentation updates only and should not influence the processing of a payout transaction. Example: changes to the description of Purpose of Payment code.\n\n* minor-version updates indicate backward compatible changes in the route validation rules on a payout transaction. Example: addition of a new Purpose of Payment code.\n\n* major-version updates indicate backward incompatible changes in the route validation rules on a payout transaction. Such changes are usually regulatory in nature or due to partner migration on Visa's backend. Example: Purpose of Payment code changing from a \"conditional\"/ \"recommended\" to a \"required\" field.\n",
            "example": "1.0.0"
          },
          "notificationType": {
            "type": "string",
            "description": "Notification Type. Valid value- LIVE_UPDATE, FUTURE_UPDATE (This ENUM is not currently supported. It is for future use.) ROUTE_DISCONTINUED",
            "enum": [
              "LIVE_UPDATE",
              "FUTURE_UPDATE",
              "ROUTE_DISCONTINUED"
            ]
          },
          "metadataVersionDate": {
            "type": "string",
            "description": "This is the date when the metadata version will go live.\n",
            "format": "date"
          },
          "recipientCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-4217 (Alpha-3) currency code\n",
            "example": "USD"
          },
          "recipientCountryCluster": {
            "type": "string",
            "description": "Country Cluster code-valid values are SEPA, CEMAC, UEMOA\n",
            "enum": [
              "SEPA",
              "CEMAC",
              "UEMOA"
            ]
          }
        }
      },
      "DateOfBirth-6": {
        "maxLength": 10,
        "minLength": 10,
        "description": "This field should contain recipient’s date of birth.",
        "format": "date",
        "example": "1980-02-01",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "DateOfBirth-5": {
        "type": "string",
        "description": "Sender date of birth. ISO20022 field name: Debtor Birth Date.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Must follow ISO 8601 date format: YYYY-MM-DD.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must represent a valid calendar date</li>\n  <li>Cannot be a future date</li>\n  <li>No alphabetic characters or special symbols other than hyphen (-)</li>\n</ul>",
        "format": "date"
      },
      "ErrorResponseInNotificationForFailedRequest-1": {
        "required": [
          "reason",
          "status"
        ],
        "properties": {
          "reason": {
            "description": "The short description of the error.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "description": "3 digit HTTP status code",
            "example": 400,
            "exampleSetFlag": true,
            "types": [
              "integer"
            ]
          },
          "details": {
            "items": {
              "required": [
                "code",
                "message"
              ],
              "properties": {
                "code": {
                  "description": "A short code indicating the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "message": {
                  "description": "The long description of the specific error that occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                },
                "location": {
                  "description": "The place in the incoming message that the particular error occurred.",
                  "exampleSetFlag": false,
                  "types": [
                    "string"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "message": {
            "description": "The long description of the error",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ChipAuthenticationReliabilityIndicator": {
        "maximum": 9,
        "minimum": 0,
        "type": "number",
        "description": "Chip authentication reliability indicator"
      },
      "DateOfBirth-4": {
        "type": "string",
        "description": "Date of birth of the recipient",
        "format": "date"
      },
      "DateOfBirth-3": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "This field should contain recipient’s date of birth.",
        "format": "date"
      },
      "AllCondition": {
        "required": [
          "all",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "It defines an unique 'id' value of a condition"
          },
          "all": {
            "minItems": 1,
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/BooleanExpression"
                },
                {
                  "$ref": "#/components/schemas/ConditionById"
                }
              ]
            }
          }
        }
      },
      "AddressVerificationResult-1": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Specifies the result of the Address Verification Service (AVS) check performed by the card issuer for this transaction. Indicates whether the billing address provided matches the address on file with the issuer."
      },
      "202AccountPayoutCreatedResponse-3": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/202TransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "202AccountPayoutCreatedResponse-4": {
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/202TransactionStatus-1"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is accepted and will be processed & notified status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletTransactionDetail-2": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "202AccountPayoutCreatedResponse-5": {
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/202TransactionStatus-1"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is accepted and will be processed & notified status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletTransactionDetail-1": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "202AccountPayoutCreatedResponse-6": {
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/202TransactionStatus"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "OCTResponseTransactionDetail": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "ApprovalCode-2": {
        "maxLength": 6,
        "minLength": 1,
        "type": "string",
        "description": "Approval code from the processing network",
        "example": "12345A"
      },
      "WalletTransactionDetail-4": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-2"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-1"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel-1"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-2"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-5"
              }
            ],
            "exampleSetFlag": false
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-4"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "statementNarrative": {
            "$ref": "#/components/schemas/StatementNarrative-3"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ApprovalCode-1": {
        "maxLength": 6,
        "minLength": 6,
        "type": "string",
        "description": "This is a unique authorization code for an approved transaction."
      },
      "WalletTransactionDetail-3": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-3"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-2"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ApprovalCode-4": {
        "maxLength": 6,
        "minLength": 1,
        "type": "string",
        "description": "Contains the authorization approval code returned by VisaNet for the transaction from the issuer Format Typically alphanumeric, as defined by VisaNet.",
        "example": "ABC123"
      },
      "WalletTransactionDetail-6": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-2"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-4"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ApprovalCode-3": {
        "type": "string",
        "description": "Approval code from the processing network",
        "example": "12345A"
      },
      "WalletTransactionDetail-5": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-3"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "OCTSenderDetail-6": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of sender's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of sender's address"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State code of sender's address"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "Postal code of sender's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of sender's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of sender's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Address of sender"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification-1"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-4"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "OCTSenderDetail-5": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of sender's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of sender's address"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State code of sender's address"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "Postal code of sender's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of sender's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of sender's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Address of sender"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification-1"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-4"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "WalletQueryOnlyErrorResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "OCTSenderDetail-4": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName-2"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType-1"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "<b>Conditional</b><br><br>\nIf the transaction is a money transfer and cross-border or U.S. domestic, this field must contain the sender's city. If the transaction is a funds disbursement and cross-border or U.S. domestic, this field must contain either the city of the merchant or government entity sending the funds disbursement. If the transaction is a pre-paid load or credit card bill pay and U.S. domestic, this field must contain the sender's city. This field is also required for domestic Colombia transactions. Format Alphabetic characters only May include spaces",
                "example": "Austin"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "<b>Conditional</b><br><br>\nIf the transaction is a money transfer and cross-border or U.S. domestic, this field must contain the sender's country code. If the transaction is a funds disbursement and cross-border or U.S. domestic, this field must contain either the country code of the merchant or government entity sending the funds disbursement. If the transaction is a pre-paid load or credit card bill pay and U.S. domestic, this field must contain the sender's country code. Alpha or numeric country code can be supported. Format Must follow ISO 3166-1 alpha-3 standard Uppercase letters only Refer to ISO Codes<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>This field is required when sending the transactions to some of the US debit networks and for domestic Colombia transactions.</li>\n</ul>",
                "example": "USA"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State or province code of the sender's address. Format Must follow ISO 3166-2 or local standards<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Uppercase letters only</li>\n  <li>No spaces or special symbols</li>\n</ul>",
                "example": "TX"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "<b>Conditional</b><br><br>\nWhen present, this field contains the sender's postal code Format Alphanumeric, may include spaces or hyphens<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must follow local postal code format</li>\n  <li>No special symbols other than space or hyphen</li>\n</ul>\n<b>Note:</b> Required when cardAcceptor:address:country is US or CA and for domestic Colombia transactions. For domestic Colombia transactions, the maximum length of this field is 16 characters. For other transactions, the entered value should be between 5 and 10 characters.",
                "example": "SW1A 1AA"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Optional. This field contains the first line of the sender address. Format Alphabetic and numeric characters allowed May include spaces and hyphens<br><br>\n<b>Note:</b> This field is only applicable for domestic Colombia transactions. For other transactions, if the field is provided, it will be dropped.",
                "example": "123 Main Street"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Optional. This field contains the second line of the sender address. Format Alphabetic and numeric characters allowed<br><br>\n<b>Note:</b> This field is only applicable for domestic Colombia transactions. For other transactions, if the field is provided, it will be dropped.",
                "example": "Apt 4B"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName-1"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName-1"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName-1"
          },
          "occupation": {
            "description": "Specifies the sender's occupation or profession. Format Alphabetic characters only May include spaces<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must not contain exclusively numeric characters</li>\n  <li>Must not contain special symbols</li>\n  <li>Trim leading and trailing spaces</li>\n</ul>",
            "example": "Engineer",
            "allOf": [
              {
                "$ref": "#/components/schemas/Occupation-1"
              }
            ]
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-5"
          },
          "nationality": {
            "description": "Specifies the sender's nationality.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Must follow ISO 3166-1 alpha-3 standard</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid ISO 3166-1 alpha-3 country code</li>\n  <li>Uppercase letters only</li>\n  <li>No spaces or special symbols</li>\n</ul>",
            "example": "USA",
            "allOf": [
              {
                "$ref": "#/components/schemas/Nationality-2"
              }
            ]
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-3"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br>\nIf the transaction is a money transfer and cross-border or U.S. domestic, this field must contain the sender's address. If the transaction is a funds disbursement and cross-border or U.S. domestic, this field must contain either the address of the merchant or government entity sending the funds disbursement. If the transaction is a pre-paid load or credit card bill pay and U.S. domestic, this field must contain the sender's address. Format Composite Object with subfields: addressLine1, addressLine2, city, stateCode, postalCode, country<br><br>\n<b>Note:</b> This field is not applicable for domestic Colombia transactions"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTSenderDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-2"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification-2"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-6"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-3"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "MasterCardElectronicCommerceIndicators": {
        "maxLength": 19,
        "minLength": 7,
        "type": "string",
        "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
      },
      "WalletQueryOnlyErrorResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-4"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "OCTSenderDetail-3": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of sender's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of sender's address"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State code of sender's address"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "Postal code of sender's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of sender's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of sender's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Address of sender"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification-1"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-4"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "OCTSenderDetail-2": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of sender's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of sender's address"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State code of sender's address"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "Postal code of sender's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of sender's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of sender's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Address of sender"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification-1"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-4"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "WalletQueryOnlyErrorResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Wallet  \n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "errorDetails": {
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-5"
                },
                "exampleSetFlag": false,
                "types": [
                  "array"
                ]
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is accepted and will be processed & notified status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "OCTSenderDetail-1": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of sender's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of sender's address"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State code of sender's address"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "Postal code of sender's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of sender's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of sender's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Address of sender"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification-1"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-4"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "VisaRateProvided-1": {
        "maxLength": 70,
        "minLength": 1,
        "type": "string",
        "description": "Indicates the Visa-designated provider of the foreign exchange (FX) rate applied to the transaction under persistent FX processing. This field identifies the source of the exchange rate used for currency conversion in the transaction response. Format Represents the name or code of the Visa-approved FX rate provider.",
        "example": "VisaFXProvider"
      },
      "AccountQueryOnlyResponse-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "AccountQueryOnlyResponse-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse-1"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "AccountQueryOnlyResponse-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse-1"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse-1"
          }
        ]
      },
      "AccountQueryOnlyResponse-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse-3"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "200TransactionStatus-1": {
        "description": "- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received\n",
        "enum": [
          "PAYMENT_RECEIVED"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "AccountQueryOnlyResponse-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQueryOnlySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryOnlyErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingOnlyCancelledResponse-1"
          }
        ]
      },
      "FxConversionRate": {
        "type": "number",
        "description": "Rate used to convert the transaction amount to the settlement amount when currencies differ",
        "format": "double",
        "example": 1.05
      },
      "RecipientDetailAddress": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Recipient address city. ISO20022 field name: Creditor Address Town Name.\n",
            "example": "San Francisco"
          },
          "state": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Recipient address state or province. ISO20022 field name: Creditor Address Country Sub-division.\n",
            "example": "CA"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Recipient address country. Format: 3-character ISO-3166 (Alpha-3) country code. ISO20022 field name: Creditor Address Country.\n",
            "example": "USA"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Recipient address postal code. ISO20022 field name: Creditor Address Postal Code.\n",
            "example": "94105"
          },
          "streetName": {
            "maxLength": 70,
            "minLength": 1,
            "type": "string",
            "description": "Recipient street name",
            "example": "Main Street"
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Recipient address line 1. ISO20022 field name: Creditor Address Line 1.\n",
            "example": "123 Main Street"
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Recipient address line 2. ISO20022 field name: Creditor Address Line 2.\n",
            "example": "Suite 456"
          },
          "buildingNumber": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Recipient building number",
            "example": "123"
          },
          "subDivisionMinorCode": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Recipient sub-division minor code",
            "example": "SFO"
          }
        },
        "description": "Address details of the recipient"
      },
      "OCTSenderDetail-9": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of sender's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of sender's address"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State code of sender's address"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "Postal code of sender's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of sender's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of sender's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Address of sender"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTSenderDetailAdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-1"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "OCTSenderDetail-8": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of sender's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of sender's address"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State code of sender's address"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "Postal code of sender's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of sender's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of sender's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Address of sender"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification-1"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-4"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "OCTSenderDetail-7": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "type": "object",
            "properties": {
              "city": {
                "maxLength": 25,
                "minLength": 1,
                "type": "string",
                "description": "City of sender's address"
              },
              "country": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Country of sender's address"
              },
              "stateCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "State code of sender's address"
              },
              "postalCode": {
                "maxLength": 10,
                "minLength": 5,
                "type": "string",
                "description": "Postal code of sender's address"
              },
              "addressLine1": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "First line of sender's address"
              },
              "addressLine2": {
                "maxLength": 99,
                "minLength": 1,
                "type": "string",
                "description": "Second line of sender's address"
              }
            }
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-2"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality-1"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail-1"
          },
          "senderAddress": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Address of sender"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth-1"
          },
          "identificationList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SenderIdentification-1"
            }
          },
          "senderAccountNumber": {
            "$ref": "#/components/schemas/SenderAccountNumber-4"
          },
          "senderReferenceNumber": {
            "$ref": "#/components/schemas/SenderReferenceNumber-1"
          },
          "senderAccountNumberType": {
            "type": "string",
            "description": "Type of sender account number",
            "enum": [
              "DEFAULT"
            ]
          },
          "paymentCredentialReference": {
            "$ref": "#/components/schemas/OctSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Original Credit Transaction.\n<b>Conditional</b>\nOnly one of 'senderAccountNumber' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "AddressVerificationResult": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Address verification result"
      },
      "DigitalAssetAdditionalDetail-3": {
        "type": "object",
        "properties": {
          "hash": {
            "maxLength": 100,
            "minLength": 64,
            "type": "string",
            "description": "A unique identifier for blockchain transaction, generated when blockchain transaction is initiated.\n"
          }
        }
      },
      "ValidateAccountPayoutResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "DigitalAssetAdditionalDetail-2": {
        "properties": {
          "hash": {
            "maximum": 100,
            "minimum": 64,
            "description": "A unique identifier for blockchain transaction, generated when blockchain transaction is initiated.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DigitalAssetAdditionalDetail-1": {
        "properties": {
          "hash": {
            "maxLength": 100,
            "minLength": 64,
            "description": "A unique identifier for blockchain transaction, generated when blockchain transaction is initiated.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "CompanyIdTypeWallet": {
        "type": "string",
        "description": "When present, this field contains the type of identification document.\n\nValid values:\n* `T` - Tax Id\n* `L` - Legal Entity Registration Number\n",
        "example": "P",
        "enum": [
          "T",
          "L"
        ]
      },
      "ValidatePayoutRequest": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest"
          }
        ]
      },
      "SettlementOverdueDetails": {
        "required": [
          "currencyCode",
          "flexibleAccountFrozen",
          "originalDueDateTime",
          "totalAmountDue",
          "vplContact"
        ],
        "type": "object",
        "properties": {
          "vplContact": {
            "$ref": "#/components/schemas/VplContact"
          },
          "currencyCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "totalAmountDue": {
            "$ref": "#/components/schemas/TotalAmountDue"
          },
          "originalDueDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "flexibleAccountFrozen": {
            "$ref": "#/components/schemas/FlexibleAccountFrozen"
          }
        }
      },
      "CardAcceptorCustomerServicePhoneNumber-1": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field contains the customer service phone number of the acceptor that should be used for transaction inquiries.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Digits.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>This field is conditionally required for all MasterCard transactions.</li>\n  <li>Must be reachable for customer inquiries.</li>\n</ul>",
        "example": "+10987654321"
      },
      "VerificationCardAcceptor-2": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Identifier for the card acceptor",
            "example": "Verification001"
          },
          "name": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Name of the cardAcceptor",
            "example": "Verification TEST"
          },
          "address": {
            "$ref": "#/components/schemas/VerificationCardAcceptorAddress-2"
          },
          "terminalId": {
            "maxLength": 8,
            "minLength": 1,
            "type": "string",
            "description": "The identifier for the terminal at a card acceptor location",
            "example": "TERM0001"
          }
        },
        "description": "The cardAcceptor is the merchant, funds transfer originator, or Visa internal application submitting the Payment Account Validation request"
      },
      "VerificationCardAcceptor-1": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Identifier for the card acceptor",
            "example": "Verification001"
          },
          "name": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Name of the cardAcceptor",
            "example": "Verification TEST"
          },
          "address": {
            "$ref": "#/components/schemas/VerificationCardAcceptorAddress-1"
          },
          "terminalId": {
            "maxLength": 8,
            "minLength": 1,
            "type": "string",
            "description": "The identifier for the terminal at a card acceptor location",
            "example": "TERM0001"
          }
        },
        "description": "The cardAcceptor is the merchant, funds transfer originator, or Visa internal application submitting the Payment Account Validation request"
      },
      "VauErrorReasonCode-1": {
        "maxLength": 6,
        "minLength": 6,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nProvides the reason code for any error encountered during VAU processing. If present, describes the reason the VAU failed Values defined by Visa VAU specifications.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid VAU error reason code.</li>\n</ul>",
        "example": "0"
      },
      "OCTNetworkResponse-1": {
        "required": [
          "actionCode",
          "settlementInfo"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/OCTNetworkResponsePosData"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-2"
          },
          "persistentFX": {
            "$ref": "#/components/schemas/PersistentFX"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/OCTNetworkResponseSettlementInfo-1"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/OCTCardResponseTokenData"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/OCTCardVerificationResults"
          }
        }
      },
      "ServiceLocationAddress": {
        "type": "object",
        "properties": {
          "city": {
            "$ref": "#/components/schemas/ServiceLocationCity"
          },
          "state": {
            "$ref": "#/components/schemas/ServiceLocationState"
          },
          "country": {
            "$ref": "#/components/schemas/ServiceLocationCountry"
          },
          "postalCode": {
            "$ref": "#/components/schemas/ServiceLocationPostalCode"
          }
        }
      },
      "OCTNetworkResponse-2": {
        "required": [
          "actionCode",
          "settlementInfo"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/OCTNetworkResponsePosData"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-2"
          },
          "persistentFX": {
            "$ref": "#/components/schemas/PersistentFX"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/OCTNetworkResponseSettlementInfo-1"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-2"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/OCTCardResponseTokenData"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/OCTCardVerificationResults"
          }
        }
      },
      "UnspecifiedTypeRecipientIdentificationListAccountWallet-2": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "$ref": "#/components/schemas/UnspecifiedIdTypeAccount"
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "PayoutIdentifier": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          {
            "$ref": "#/components/schemas/PayoutId"
          }
        ]
      },
      "OCTNetworkResponse-4": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/OCTNetworkResponsePosData-1"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData-1"
          },
          "networkId": {
            "description": "<b>Conditional</b><br><br>\nThis contains a code that identifies the network on which the transaction was processed. Refer to <a href=\"/request_response_codes#network_id_and_sharing_group_code\">Network ID</a><br><br>\n<b>Note:</b> This field is returned only if it is anything other than networkId value 2.<br><br>\nSupported only in:\n<ul>\n  <li>US for domestic transactions.</li>\n  <li>Cross border transactions involving UnionPay International Money Express.</li>\n</ul>",
            "example": 2,
            "allOf": [
              {
                "$ref": "#/components/schemas/NetworkId-2"
              }
            ]
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode-3"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-4"
          },
          "persistentFX": {
            "$ref": "#/components/schemas/PersistentFX-1"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/OCTNetworkResponseSettlementInfo-2"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode-1"
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-3"
          },
          "feeProgramIndicator": {
            "description": "Indicates the fee program associated with the transaction. This field identifies which fee structure or program applies to the transaction for settlement and reporting purposes.",
            "allOf": [
              {
                "$ref": "#/components/schemas/FeeProgramIndicator-1"
              }
            ]
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/OCTCardResponseTokenData-1"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/OCTCardVerificationResults-1"
          }
        }
      },
      "UnspecifiedTypeRecipientIdentificationListAccountWallet-1": {
        "description": "Identification list of recipient",
        "items": {
          "properties": {
            "idType": {
              "$ref": "#/components/schemas/UnspecifiedIdTypeAccount-1"
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "ErrorResponseWithKey": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse"
              }
            ]
          }
        }
      },
      "AFTRResponseOriginatorDetail": {
        "type": "object",
        "properties": {
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTRResponseCardAcceptor"
          }
        }
      },
      "PayoutStatusesInProgress-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: More information required by Visa before transaction can be processed.\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nThis field is not populated at PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              }
            }
          }
        }
      },
      "AccountStatus": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Status of the account",
        "example": "A"
      },
      "PayoutStatusesInProgress-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-4"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "properties": {
              "status": {
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: More information required by Visa before transaction can be processed.\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated if 'fundingStatus' or 'expectedPostingDate' fields change value.\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus-1"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ],
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-5"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-3"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nThis field is not populated at PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-5"
                  }
                ],
                "exampleSetFlag": false
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails-1"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId-1"
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutStatusesInProgress-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-1"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              }
            }
          }
        }
      },
      "PayoutStatusesInProgress-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail"
              }
            }
          }
        }
      },
      "AFTResponseData-11": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTResponseTransactionDetail-13"
          }
        },
        "description": "Account Funding Transaction (AFT) response data structure"
      },
      "ValidatePayoutRequest-1": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-1"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-1"
          }
        ]
      },
      "PayoutStatusesInProgress-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-5"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "properties": {
              "status": {
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus-1"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ],
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-6"
                  }
                ],
                "exampleSetFlag": false
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-3"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nThis field is not populated at PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ],
                "exampleSetFlag": false
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails-2"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId-1"
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail-2"
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutRequest-4": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-4"
          }
        ]
      },
      "ValidatePayoutRequest-5": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-2"
          }
        ]
      },
      "ValidatePayoutRequest-2": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest"
          }
        ]
      },
      "ValidatePayoutRequest-3": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-1"
          }
        ]
      },
      "PayoutStatusesInProgress": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              }
            }
          }
        }
      },
      "ValidatePayoutRequest-8": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-4"
          }
        ]
      },
      "WalletPayoutOnlyRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest"
          }
        ]
      },
      "ValidatePayoutRequest-9": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-5"
          }
        ]
      },
      "ValidatePayoutRequest-6": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-3"
          }
        ]
      },
      "ValidatePayoutRequest-7": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-7"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-7"
          }
        ]
      },
      "AccountQueryOnlySuccessResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-1"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PaymentFacilitatorAddress": {
        "type": "object",
        "properties": {
          "city": {
            "$ref": "#/components/schemas/PaymentFacilitatorCity"
          },
          "state": {
            "$ref": "#/components/schemas/PaymentFacilitatorState"
          },
          "country": {
            "$ref": "#/components/schemas/PaymentFacilitatorCountry"
          },
          "postalCode": {
            "$ref": "#/components/schemas/PaymentFacilitatorPostalCode"
          },
          "addressLine": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddressLine"
          }
        }
      },
      "AccountQueryOnlySuccessResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-2"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQueryOnlySuccessResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "CompanySenderIdentificationListAccount": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number\n* I-Legal Entity Identifier (LEI) Number. \n\nLegal Entity Identifier is a unique identification of legal entities participating in financial transactions and other official interactions maintained in a global directory by the Global Legal Entity Identifier Foundation (GLEIF). This field can only be used for specific routes (Refer to Visa Direct Endpoint Guide on country approval).Format: [A-Z0-9]{18,18}[0-9]{2,2}. ID issue country must NOT be provided when ID type is LEI.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "AccountQueryOnlySuccessResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQueryOnlySuccessResponse-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "SenderSourceOfFunds-1": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "<b>Conditional.</b><br><br>\nIf the transaction is a money transfer, the field is required and must contain a valid <a href=\"/request_response_codes#source_of_funds\">sourceOfFundsCode</a> code that matches the funding instrument.<br><br>\nIf the transaction is a funds disbursement, the field is required and most likely contains a \"05\" as the <a href=\"/request_response_codes#source_of_funds\">sourceOfFundsCode</a> code to identify that the merchant or government entity used a deposit account to fund the disbursement<br><br>\nIf the transaction is a pre-paid load, the field is required if the transaction is non-U.S. domestic.<br><br>\nIf the transaction is a credit bill pay, the field is required if the transaction is non-U.S. domestic, and the <a href=\"/request_response_codes#source_of_funds\">sourceOfFundsCode</a> code must not contain a \"01\" or \"06\".<br><br>\nRefer to <a href=\"/request_response_codes#source_of_funds\">sourceOfFundsCode</a> codes",
        "example": "Salary"
      },
      "AccountQueryOnlySuccessResponse-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/TransactionStatus-5"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-3"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel-1"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-5"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-3"
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-5"
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-4"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId-1"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountRecipientIsCompany-8": {
        "required": [
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-11"
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountRecipientIsCompany-9": {
        "required": [
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-14"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountRecipientIsCompany-6": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-9"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount"
              }
            ]
          }
        }
      },
      "PayoutDigitalAssetRequest": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\n\nValid values:\n\"D\" – Visa Direct Digital Asset\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID"
              }
            ]
          }
        }
      },
      "AccountRecipientIsCompany-7": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-10"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount"
              }
            ]
          }
        }
      },
      "AccountRecipientIsCompany-4": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-7"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount"
              }
            ]
          }
        }
      },
      "AccountRecipientIsCompany-5": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-8"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount"
              }
            ]
          }
        }
      },
      "TransactionIdType": {
        "type": "string",
        "description": "This field indicates the type of identifier\n- CLIENT_REFERENCE_ID is merchant's transaction reference ID\n- PAYOUT_ID is Visa's transaction reference ID\n",
        "enum": [
          "CLIENT_REFERENCE_ID",
          "PAYOUT_ID"
        ]
      },
      "AccountRecipientIsCompany-2": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-5"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount"
              }
            ]
          }
        }
      },
      "AccountRecipientIsCompany-3": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-6"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount"
              }
            ]
          }
        }
      },
      "AccountRecipientIsCompany-1": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-1"
          },
          "identificationList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyRecipientIdentificationListAccount"
              }
            ]
          }
        }
      },
      "FxConversionRate-1": {
        "type": "number",
        "description": "Specifies the foreign exchange conversion rate applied to calculate the settlement amount in the settlement currency. Format number<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a positive numeric value greater than zero.</li>\n  <li>Cannot include alphabetic characters or special symbols other than the decimal point.</li>\n  <li>Field is conditional and only present when currency conversion applies.</li>\n</ul>",
        "format": "double",
        "example": 1.23456789
      },
      "CardTransactionValidateDetail-8": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse  \n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              },
              "remoteCommerceAcceptorIdentifier": {
                "maxLength": 150,
                "minLength": 1,
                "type": "string",
                "description": "This field contains a merchant identifier encoded as Base64. For example website URL or reverse domain name.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData-8"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "PayoutNotificationProcessRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "CardTransactionValidateDetail-9": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData-9"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "PayoutNotificationProcessRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "ScpExemptionIndicator": {
        "type": "string",
        "description": "SCP exemption indicator",
        "enum": [
          "true",
          "false"
        ]
      },
      "VerificationResponseData": {
        "required": [
          "cardVerificationDetail",
          "transactionalDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId"
            ],
            "type": "object",
            "properties": {
              "approvalCode": {
                "maxLength": 6,
                "minLength": 1,
                "type": "string",
                "description": "Approval code from the Issuer",
                "example": "123456"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
              },
              "initiatingPartyId": {
                "type": "integer",
                "description": "A unique identifier assigned by the initiating party for the API consumer",
                "format": "int64",
                "example": 987654321
              },
              "transactionIdentifier": {
                "maxLength": 15,
                "minLength": 15,
                "type": "string",
                "description": "Visa generated unique identifier for the transaction",
                "example": "123456789012345"
              }
            }
          },
          "cardVerificationDetail": {
            "required": [
              "cardVerificationResult"
            ],
            "type": "object",
            "properties": {
              "invalidReason": {
                "type": "string",
                "description": "Reason why card is invalid",
                "example": "EXPIRED_CARD",
                "enum": [
                  "UNKNOWN",
                  "LOST_CARD",
                  "STOLEN_CARD",
                  "EXPIRED_CARD",
                  "INVALID_ACCOUNT",
                  "CLOSED_ACCOUNT",
                  "CVV2_FAILURE",
                  "FRAUD",
                  "SUSPECTED_FRAUD",
                  "RESTRICTED_CARD",
                  "INVALID_CVV",
                  "CARD_BLOCKED",
                  "SECURITY_VIOLATION",
                  "TRANSACTION_NOT_PERMITTED",
                  "INVALID_TRANSACTION",
                  "INSUFFICIENT_FUNDS"
                ]
              },
              "cvvVerificationResult": {
                "type": "string",
                "description": "Result of the CVV2 validation for the primaryAccountNumber in the request",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "NO_MATCH",
                  "NOT_PERFORMED"
                ]
              },
              "cardVerificationResult": {
                "type": "string",
                "description": "Result of the card verification process",
                "example": "VALID",
                "enum": [
                  "VALID",
                  "INVALID"
                ]
              },
              "nameVerificationResult": {
                "type": "string",
                "description": "Result of the account name matching performed by Account Name",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH",
                  "NO_MATCH",
                  "NOT_PERFORMED",
                  "NOT_SUPPORTED"
                ]
              },
              "ageVerificationResponse": {
                "type": "object",
                "properties": {
                  "ageVerificationResults": {
                    "maxLength": 5,
                    "minLength": 1,
                    "type": "string",
                    "description": "Age verification result codes, one per age threshold provided in the request, returned in the\nsame order as the thresholds in ageVerification. Possible values per position:\n- I: Invalid\n- V: Valid\n- U: Unable to perform service\n- S: Not supported\n",
                    "example": "VVI"
                  },
                  "ageVerificationRequestDetails": {
                    "maxLength": 15,
                    "minLength": 3,
                    "type": "string",
                    "description": "Echoes back the age thresholds exactly as submitted in the request ageVerification field.\nUse this field to map each position in ageVerificationResults to its corresponding age threshold,\nsince results are returned in the same order as the thresholds provided.\nFor example, if this field returns 18D30D50D and ageVerificationResults is VVI, the cardholder\nsatisfies the 18+ and 30+ thresholds but not 50+.\n",
                    "example": "18D30D50D"
                  }
                },
                "description": "Contains the results of the age verification request."
              },
              "cardAuthenticationResult": {
                "type": "string",
                "description": "A Visa-defined code indicating Online Card Authentication Method result",
                "example": "VERIFIED",
                "enum": [
                  "VERIFIED",
                  "FAILED",
                  "NOT_PERFORMED"
                ]
              },
              "addressVerificationResult": {
                "type": "string",
                "description": "Result of the Address Verification Service (AVS) validation for the Primary account number in the request when requested",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH_POSTALCODE",
                  "PARTIAL_MATCH_STREETADDRESS",
                  "NOT_VERIFIED",
                  "NOT_VERIFIED_RETRY"
                ]
              },
              "identityVerificationResult": {
                "type": "object",
                "properties": {
                  "idType": {
                    "type": "string",
                    "description": "Account holder ID type",
                    "example": "PSPN",
                    "enum": [
                      "NTID",
                      "PSPN",
                      "DRLN",
                      "TXIN"
                    ]
                  },
                  "idVerificationResult": {
                    "type": "string",
                    "description": "Identity verification result",
                    "example": "VERIFIED",
                    "enum": [
                      "VERIFIED",
                      "NOT_PERFORMED",
                      "FAILED",
                      "NOT_SUPPORTED"
                    ]
                  }
                },
                "description": "Identity verification details"
              },
              "lastNameVerificationResult": {
                "type": "string",
                "description": "Result of the account last name matching performed by Account Name",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH",
                  "NO_MATCH"
                ]
              },
              "firstNameVerificationResult": {
                "type": "string",
                "description": "Result of the account First name matching performed by Account Name",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH",
                  "NO_MATCH"
                ]
              },
              "middleNameVerificationResult": {
                "type": "string",
                "description": "Result of the account middle name matching performed by Account Name",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "PARTIAL_MATCH",
                  "NO_MATCH"
                ]
              },
              "dateOfBirthVerificationResult": {
                "type": "string",
                "description": "Result of the date of birth verification.",
                "example": "MATCH",
                "enum": [
                  "MATCH",
                  "NO_MATCH",
                  "NOT_VERIFIED",
                  "NOT_SUPPORTED"
                ]
              },
              "phoneNumberVerificationResult": {
                "type": "string",
                "description": "Card holder phone verification result from the issuer",
                "example": "VERIFIED",
                "enum": [
                  "VERIFIED",
                  "NOT_PERFORMED",
                  "FAILED"
                ]
              },
              "emailAddressVerificationResult": {
                "type": "string",
                "description": "Card holder Email Address Verification Results from the issuer",
                "example": "VERIFIED",
                "enum": [
                  "VERIFIED",
                  "NOT_PERFORMED",
                  "FAILED"
                ]
              },
              "cardholderAuthenticationVerificationResult": {
                "type": "string",
                "description": "If TAVV is provided in the request, its validation result will be provided in this field.\nFor future: This field will be extended to provide validation result for Cardholder Authentication Verification Value (CAVV).\n",
                "example": "VERIFIED",
                "enum": [
                  "VERIFIED",
                  "FAILED",
                  "NOT_PERFORMED"
                ]
              }
            },
            "description": "Verification results for the card"
          }
        },
        "description": "Response data for Verification check with card verification results"
      },
      "PayoutNotificationProcessRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-3"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "PayoutNotificationProcessRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "TransactionalAdditionalData": {
        "type": "array",
        "description": "Additional fields that are needed in order to complete the additional screening. The additional fields can be included as name value pairs (Field name, Field value)",
        "items": {
          "required": [
            "name",
            "value"
          ],
          "type": "object",
          "properties": {
            "name": {
              "description": "Originating Entity to send additional transaction information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the name component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataName"
                }
              ]
            },
            "value": {
              "description": "Originating Entity to send additional transaction information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the value  component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataValue"
                }
              ]
            }
          }
        }
      },
      "CardResponseTokenData": {
        "type": "object",
        "properties": {
          "last4ofPAN": {
            "$ref": "#/components/schemas/Last4ofPAN"
          },
          "minimumAccountRange": {
            "$ref": "#/components/schemas/MinimumAccountRange"
          },
          "tokenAssuranceMethod": {
            "$ref": "#/components/schemas/TokenAssuranceMethod"
          },
          "additionalTokenRespInfo": {
            "$ref": "#/components/schemas/AdditionalTokenRespInfo"
          }
        }
      },
      "PayoutNotificationProcessRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "FlexibleSettlementNotification": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/LimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/EODFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/NearLimitReachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementOverdueFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/SettlementDueBreachedFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/ExposureInfoFlexibleSettlementNotification"
          },
          {
            "$ref": "#/components/schemas/PullFundsInitNotification"
          }
        ]
      },
      "CityOfBirth-1": {
        "maxLength": 35,
        "minLength": 1,
        "description": "This field should contain recipient’s city of birth.",
        "example": "Mumbai",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "MerchantCategoryCode": {
        "type": "number",
        "description": "Four-digit number listed in ISO 18245",
        "example": 6012
      },
      "AccountName-1": {
        "maxLength": 70,
        "minLength": 1,
        "description": "When present, this field contains recipient’s account name at the bank.",
        "example": "John Doe",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "ForeignExchangeFee-1": {
        "type": "number",
        "description": "When present, this field contains the sender's foreign exchange markup fee (markup above the wholesale or VisaNet exchange rate as assessed by the originator). Values in this field must be in the same currency and format as defined in the amount field.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must represent a valid numeric amount formatted according to Visa specifications.</li>\n</ul>",
        "format": "double",
        "example": 2.5
      },
      "AFTTransactionDetailAdditionalData": {
        "anyOf": [
          {
            "title": "cpsAuthorizationCharacteristicsIndicator",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "cpsAuthorizationCharacteristicsIndicator<br><br><b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
              },
              "value": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "digitalSecureRemotePaymentTokenCryptogram",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "digitalSecureRemotePaymentTokenCryptogram<br><br>This field contains Mastercard digital payment/Cryptogram data associated with the token."
              },
              "value": {
                "maxLength": 28,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "masterCardUCAFCollectionIndicator",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardUCAFCollectionIndicator<br><br>E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message."
              },
              "value": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "masterCardUCAFField",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardUCAFField<br><br>This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data"
              },
              "value": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "memberComments",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "memberComments<br><br>This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
              },
              "value": {
                "maxLength": 254,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "vauFlag",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "vauFlag<br><br>Possible values are : Y (replacement occurred). N (No replacements)"
              },
              "value": {
                "type": "string"
              }
            }
          },
          {
            "title": "argentinaNationalServiceData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "argentinaNationalServiceData<br><br>Settlement Service Data object for Argentina required if transaction indicates Argentina national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/ArgentinaNationalServiceData"
              }
            }
          },
          {
            "title": "mexicoNationalServiceData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "mexicoNationalServiceData<br><br>Settlement Service Data object for Mexico required if transaction indicates Mexico national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/MexicoNationalServiceData"
              }
            }
          },
          {
            "title": "masterCardWalletIdentifier",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardWalletIdentifier<br><br>This field contains the Wallet Program Data  generated by the PayPass Online platform or MasterPass platform"
              },
              "value": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string"
              }
            }
          },
          {
            "title": "masterCardAuthenticationData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardAuthenticationData<br><br>The first character contains Mastercard 3DS Program Protocol for 3DS. Please refer to the Mastercard specification for a list of valid values.<br/>Next 36 characters contain the directory server transaction ID data"
              },
              "value": {
                "maxLength": 37,
                "minLength": 1,
                "type": "string"
              }
            }
          }
        ]
      },
      "OriginatorName": {
        "maxLength": 25,
        "minLength": 1,
        "type": "string",
        "description": "The name of the merchant or originating entity sending the payment instruction to Visa.\n\nISO20022 field name: Debtor Name\n",
        "example": "12345678"
      },
      "PayoutStatusesInProgress-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: More information required by Visa before transaction can be processed.\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated if 'fundingStatus' or 'expectedPostingDate' fields change value.\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-2"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nThis field is not populated at PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              }
            }
          }
        }
      },
      "PayoutStatusesInProgress-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              }
            }
          }
        }
      },
      "PayoutStatusesInProgress-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: More information required by Visa before transaction can be processed.\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nThis field is not populated at PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              }
            }
          }
        }
      },
      "PayoutStatusesInProgress-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: More information required by Visa before transaction can be processed.\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated if 'fundingStatus' or 'expectedPostingDate' fields change value.\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is applicable for all Wallet Payments and Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_SCHEME: The payout has been submitted to the local country scheme for further processing. This status is applicable for Account Payments only when provided by the Network Partner.\n- DELIVERED_TO_RECIPIENT_BANK: The payout has been submitted to the recipient’s bank. This status is applicable for Account Payments only when provided by the Network Partner.\n<br />ISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED",
                  "DELIVERED_TO_SCHEME",
                  "DELIVERED_TO_RECIPIENT_BANK"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-1"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nThis is an optional field, and it can indicate a change in the expected posting date.\n\nThis field is not populated at PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK.\n\nISO20022 field name: Interbank Settlement Date\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              }
            }
          }
        }
      },
      "PinData": {
        "required": [
          "pinBlockFormatCode",
          "pinDataBlock"
        ],
        "type": "object",
        "properties": {
          "pinDataBlock": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string",
            "description": "PIN data block",
            "format": "binary"
          },
          "zoneKeyIndex": {
            "maximum": 99,
            "minimum": 0,
            "type": "integer",
            "description": "Zone key index"
          },
          "pinBlockFormatCode": {
            "maximum": 99,
            "minimum": 0,
            "type": "integer",
            "description": "PIN block format code"
          }
        }
      },
      "AFTTransactionFees": {
        "type": "object",
        "properties": {
          "surcharge": {
            "$ref": "#/components/schemas/Surcharge"
          },
          "foreignExchangeFee": {
            "$ref": "#/components/schemas/ForeignExchangeFee"
          },
          "nationalReimbursementFee": {
            "$ref": "#/components/schemas/NationalReimbursementFee"
          }
        }
      },
      "AccountStatus-1": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Indicates the status of the account as returned by VAU. Values defined by Visa VAU specifications.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>C – closed account</li>\n  <li>Q – contact cardholder</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid VAU account status code.</li>\n</ul>",
        "example": "C"
      },
      "PointOfServiceCapability": {
        "required": [
          "terminalEntryCapability",
          "terminalType"
        ],
        "type": "object",
        "properties": {
          "terminalType": {
            "maximum": 9,
            "minimum": 0,
            "type": "integer",
            "description": "Terminal type"
          },
          "terminalEntryCapability": {
            "maximum": 9,
            "minimum": 0,
            "type": "integer",
            "description": "Terminal entry capability"
          },
          "acceptsPartialAuthorizations": {
            "type": "integer",
            "description": "Accepts partial authorizations",
            "enum": [
              null,
              null
            ]
          }
        }
      },
      "AcnvAuthenticationData": {
        "type": "object",
        "properties": {
          "cvv2": {
            "maxLength": 4,
            "minLength": 1,
            "type": "string",
            "description": "Card verification value"
          },
          "tavv": {
            "maxLength": 40,
            "minLength": 40,
            "type": "string",
            "description": "Transaction authentication verification value"
          }
        }
      },
      "OCTServiceLocationDetails": {
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/ServiceLocationAddress"
          }
        },
        "description": "Service location details for Original Credit Transaction"
      },
      "CardTransactionValidateDetail-2": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse  \n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              },
              "remoteCommerceAcceptorIdentifier": {
                "maxLength": 150,
                "minLength": 1,
                "type": "string",
                "description": "This field contains a merchant identifier encoded as Base64. For example website URL or reverse domain name.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "ContactEmail": {
        "maxLength": 210,
        "minLength": 1,
        "type": "string",
        "description": "Contact Email."
      },
      "RecipientDetailMetadata-1": {
        "title": "RecipientDetail",
        "required": [
          "identityGroups"
        ],
        "type": "object",
        "properties": {
          "identityGroups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IdentityGroup-1"
            }
          }
        }
      },
      "CardTransactionValidateDetail-3": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse  \n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              },
              "remoteCommerceAcceptorIdentifier": {
                "maxLength": 150,
                "minLength": 1,
                "type": "string",
                "description": "This field contains a merchant identifier encoded as Base64. For example website URL or reverse domain name.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData-3"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "RecipientDetailMetadata-2": {
        "title": "RecipientDetail",
        "required": [
          "identityGroups"
        ],
        "type": "object",
        "properties": {
          "identityGroups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IdentityGroup-2"
            }
          }
        }
      },
      "CardTransactionValidateDetail-1": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse  \n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              },
              "remoteCommerceAcceptorIdentifier": {
                "maxLength": 150,
                "minLength": 1,
                "type": "string",
                "description": "This field contains a merchant identifier encoded as Base64. For example website URL or reverse domain name.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData-1"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "RecipientDetailMetadata-3": {
        "title": "RecipientDetail",
        "required": [
          "identityGroups"
        ],
        "properties": {
          "identityGroups": {
            "items": {
              "$ref": "#/components/schemas/IdentityGroup-3"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "CardTransactionValidateDetail-6": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse  \n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              },
              "remoteCommerceAcceptorIdentifier": {
                "maxLength": 150,
                "minLength": 1,
                "type": "string",
                "description": "This field contains a merchant identifier encoded as Base64. For example website URL or reverse domain name.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData-6"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "NearLimitReachedFlexibleSettlementNotification": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "limitReachedDetails",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "NEAR_LIMIT_REACHED"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "limitReachedDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NearLimitReachedDetails"
            }
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "CardTransactionValidateDetail-7": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse  \n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              },
              "remoteCommerceAcceptorIdentifier": {
                "maxLength": 150,
                "minLength": 1,
                "type": "string",
                "description": "This field contains a merchant identifier encoded as Base64. For example website URL or reverse domain name.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData-7"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "CardTransactionValidateDetail-4": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse  \n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              },
              "remoteCommerceAcceptorIdentifier": {
                "maxLength": 150,
                "minLength": 1,
                "type": "string",
                "description": "This field contains a merchant identifier encoded as Base64. For example website URL or reverse domain name.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData-4"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "CardTransactionValidateDetail-5": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=\"mastercard\"\n"
              },
              "UCAFField": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string",
                "description": "This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data.\n"
              },
              "UCAFCollectionIndicator": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse  \n"
              },
              "secureRemoteTokenCryptogram": {
                "maxLength": 28,
                "minLength": 28,
                "type": "string",
                "description": "This field contains Mastercard digital payment/Cryptogram data associated with the token.\n"
              },
              "remoteCommerceAcceptorIdentifier": {
                "maxLength": 150,
                "minLength": 1,
                "type": "string",
                "description": "This field contains a merchant identifier encoded as Base64. For example website URL or reverse domain name.\n"
              }
            }
          },
          "payoutId": {
            "description": "For a Push transaction the identifier of Pull transaction that funds it can be provided, to associate the Pull and Push transactions\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sencondaryId": {
            "maxLength": 28,
            "type": "string",
            "description": "secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, for e-Commerce transaction\n"
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "customProgramData": {
            "$ref": "#/components/schemas/CustomProgramData-5"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "messageReasonCode": {
            "type": "integer",
            "description": "<b>Conditional.</b><br><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD' which indicates this push funds transfer is being conducted in order to facilitate a sales tax refund."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "riskAssessmentData": {
            "$ref": "#/components/schemas/RiskAssessmentData-1"
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n- Money transfer: AA, PP, BI, FT, WT; \n- Non-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD, PS\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "scheduledPushFundsTransaction": {
            "$ref": "#/components/schemas/ScheduleTransaction"
          }
        }
      },
      "UnspecifiedIdTypeAccount-1": {
        "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number\n* I-Legal Entity Identifier (LEI) Number\n* P- Passport\n* D-Driving License\n* N-National Id\n* F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
        "enum": [
          "T",
          "L",
          "I",
          "P",
          "D",
          "N",
          "F"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "AFTResponseOriginatorDetail": {
        "type": "object",
        "properties": {
          "cardAcceptor": {
            "$ref": "#/components/schemas/AFTResponseCardAcceptor"
          }
        }
      },
      "TaxAmount": {
        "type": "number",
        "description": "Tax amount value",
        "format": "double",
        "example": 8
      },
      "ResponseReasonCode-1": {
        "maxLength": 4,
        "minLength": 1,
        "type": "string",
        "description": "This field contains the merchant advice code value received from Mastercard authorization response messages."
      },
      "PayoutSpeed": {
        "type": "string",
        "description": "Originating Entity to indicate the desired payout speed for the payment. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nISO20022 field name: Instruction Priority\n",
        "example": "standard",
        "enum": [
          "STANDARD",
          "PREMIUM"
        ]
      },
      "VisaRateTableId": {
        "maxLength": 5,
        "minLength": 1,
        "type": "string",
        "description": "Visa rate table identifier",
        "example": "12345"
      },
      "ProcessingDate-1": {
        "type": "string",
        "description": "Date when the transaction was processed",
        "format": "date"
      },
      "AFTResponsePosData": {
        "type": "object",
        "properties": {
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          }
        }
      },
      "IndividualRecipientIdentificationListAccount": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* F-Foreign Id            \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeAccount"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "ValidatePayoutRequest-12": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-7"
          }
        ]
      },
      "DigitalAssetPayoutResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus-1"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutRequest-11": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-11"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-11"
          }
        ]
      },
      "DigitalAssetPayoutResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus-1"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-5"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutRequest-10": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-6"
          }
        ]
      },
      "DigitalAssetPayoutResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-6"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "ValidatePayoutRequest-16": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-16"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-16"
          }
        ]
      },
      "ValidatePayoutRequest-15": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-15"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-15"
          }
        ]
      },
      "ValidatePayoutRequest-14": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-14"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-14"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-9"
          }
        ]
      },
      "DigitalAssetPayoutResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "ValidatePayoutRequest-13": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-8"
          }
        ]
      },
      "SenderName-1": {
        "maxLength": 140,
        "minLength": 3,
        "type": "string",
        "description": "Sender company name.\nMust not contain exclusively numeric characters\n\nISO20022 field name:\nFor 4th party payments: \"Ultimate Debtor Name\"\nFor 3rd party payments: \"Debtor Name\"\n"
      },
      "SenderName-2": {
        "maxLength": 30,
        "minLength": 2,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nFull name of sender. ISO20022 field name: Debtor Name. Format Recommended structure: Last Name + First Name + Middle Initial<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Required when first and last names are not provided</li>\n  <li>No numeric-only or special symbols</li>\n  <li>required when firstName and lastName are not provided.</li>\n</ul>",
        "example": "Doe John A"
      },
      "CardAcceptorPhoneNumber-1": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field contains the business phone number of the acceptor, if different from the acceptor customer service phone number.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Digits.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>conditionally required for all MasterCard transactions.</li>\n  <li>Must be a valid phone number format.</li>\n  <li>Include country code if required by program.</li>\n</ul>",
        "example": "+1234567890"
      },
      "SettlementServiceFlag-2": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Identifies if Visa settlement services are applied to the transaction.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>Y</li>\n  <li>N</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Field is mandatory when settlement services are relevant.</li>\n</ul>",
        "example": "Y"
      },
      "SettlementServiceFlag-1": {
        "type": "number",
        "description": "This field carries a numerical value for Settlement Service\n  Possible values are:\n  0 - International Settlement\n  9 - VIP to decide\n  8 - National Settlement\n",
        "enum": [
          0,
          9,
          8
        ]
      },
      "AFTRecipientDetail": {
        "required": [
          "recipientAccountNumber"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "type": {
            "$ref": "#/components/schemas/RecipientType"
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAddress"
          },
          "lastName": {
            "$ref": "#/components/schemas/RecipientLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/RecipientFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/RecipientMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/RecipientDateOfBirth"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/RecipientContactEmail"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTRecipientDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/RecipientCountryOfBirth"
          },
          "identificationList": {
            "$ref": "#/components/schemas/RecipientIdentificationList-1"
          },
          "recipientAccountNumber": {
            "$ref": "#/components/schemas/RecipientAccountNumber"
          },
          "recipientReferenceNumber": {
            "$ref": "#/components/schemas/RecipientReferenceNumber"
          }
        }
      },
      "VerifyRecipientDigitalAssetRequest": {
        "required": [
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset",
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              },
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              }
            }
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "BIC-1": {
        "maxLength": 11,
        "minLength": 8,
        "description": "Business Identifier Code (BIC) of the Sponsor FI (Acquirer)\n\nISO20022 field name: Debtor Agent FI BIC\n",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "VerificationCardAcceptorAddress": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "City of the merchant or the funds transfer originator/operator",
            "example": "SAN FRANCISCO"
          },
          "county": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "County of the funds transfer operator/originator",
            "example": "SFO"
          },
          "country": {
            "maxLength": 3,
            "minLength": 2,
            "type": "string",
            "description": "3-digit numeric or 3-character alpha ISO country code for the country of the merchant or the originator or the funds transfer operator",
            "example": "840 USA"
          },
          "stateCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "2-character abbreviated state code or territory code",
            "example": "CA"
          },
          "postalCode": {
            "maxLength": 9,
            "minLength": 5,
            "type": "string",
            "description": "Zip/Postal code of the merchant or the funds transfer operator/originator",
            "example": "94105"
          }
        },
        "description": "Physical address, URL, or telephone number for the merchant or funds transfer originator/operator"
      },
      "PullFundsDetails": {
        "type": "object",
        "properties": {
          "iBan": {
            "maximum": 34,
            "minimum": 1,
            "type": "string",
            "description": "The IBAN, if configured.\n"
          },
          "bankName": {
            "description": "The bank name, if configured.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "accountNumber": {
            "maximum": 4,
            "minimum": 1,
            "type": "integer",
            "description": "The last 4 digits of the account number, if configured.\n"
          },
          "expectedDebitDateTime": {
            "description": "The date and time when the debit request will be initiated.\nISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "ValidatePayoutRequest-21": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-6"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-6"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutDigitalAssetRequest-3"
          }
        ]
      },
      "Type-1": {
        "description": "Identifies the type of sender or recipient - Individual or Company \n* I - Individual\n* C - Company\n",
        "example": "I",
        "enum": [
          "I",
          "C"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "ValidatePayoutRequest-20": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-5"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-3"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutDigitalAssetRequest-2"
          }
        ]
      },
      "AccountPayoutResponse-9": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-10"
          }
        ]
      },
      "ValidatePayoutRequest-27": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-25"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-23"
          }
        ]
      },
      "ValidatePayoutRequest-26": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-24"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-22"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutDigitalAssetRequest-5"
          }
        ]
      },
      "ValidatePayoutRequest-25": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-23"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-21"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutDigitalAssetRequest-4"
          }
        ]
      },
      "ValidatePayoutRequest-24": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-22"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-10"
          }
        ]
      },
      "CardEligibilityResult": {
        "required": [
          "billingCurrencyCode",
          "billingCurrencyCodeMinorDigits",
          "cardProductType",
          "issuerCountryCode",
          "nonVisaCardPlatformCode",
          "visaCardPlatformCode"
        ],
        "type": "object",
        "properties": {
          "domestic": {
            "type": "object",
            "properties": {
              "pullFunds": {
                "description": "Domestic pull funds eligible networks\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Network"
                  }
                ]
              },
              "moneyTransfer": {
                "type": "object",
                "properties": {
                  "fastFundsNetworks": {
                    "description": "Eligible fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  },
                  "nonFastFundsNetworks": {
                    "description": "Eligible non-fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  }
                },
                "description": "Money transfer eligibility\n"
              },
              "gamblingTransfer": {
                "type": "object",
                "properties": {
                  "fastFundsNetworks": {
                    "description": "Eligible fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  },
                  "nonFastFundsNetworks": {
                    "description": "Eligible non-fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  }
                },
                "description": "Gambling transfer eligibility\n"
              },
              "nonMoneyTransfer": {
                "type": "object",
                "properties": {
                  "fastFundsNetworks": {
                    "description": "Eligible fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  },
                  "nonFastFundsNetworks": {
                    "description": "Eligible non-fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  }
                },
                "description": "Non-money transfer eligibility\n"
              }
            },
            "description": "Domestic eligibility\n"
          },
          "comboCard": {
            "type": "string",
            "description": "Indicates the type of Combo card.(Visa Cards on Visa Network Only)\n",
            "enum": [
              "Y",
              "N"
            ]
          },
          "crossBorder": {
            "type": "object",
            "properties": {
              "pullFunds": {
                "description": "Cross-border pull funds eligible networks\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Network"
                  }
                ]
              },
              "moneyTransfer": {
                "type": "object",
                "properties": {
                  "fastFundsNetworks": {
                    "description": "Eligible fast funds networks(Translate NetworkID in to sharingGroupCode in priority Order with Visa as highest priority and ranking of ppgsNetworkInfo is taken in the sequence provided by FTAI response)\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  },
                  "nonFastFundsNetworks": {
                    "description": "Eligible non-fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  }
                }
              },
              "gamblingTransfer": {
                "type": "object",
                "properties": {
                  "fastFundsNetworks": {
                    "description": "Eligible fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  },
                  "nonFastFundsNetworks": {
                    "description": "Eligible non-fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  }
                },
                "description": "Gambling transfer eligibility\n"
              },
              "nonMoneyTransfer": {
                "type": "object",
                "properties": {
                  "fastFundsNetworks": {
                    "description": "Eligible fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  },
                  "nonFastFundsNetworks": {
                    "description": "Eligible non-fast funds networks\n",
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/Network"
                      }
                    ]
                  }
                }
              }
            },
            "description": "Cross border eligbility\n"
          },
          "geoRestriction": {
            "type": "string",
            "description": "If the card issuer country falls geo-resticted region for the originator.\n",
            "enum": [
              "Y",
              "N"
            ]
          },
          "cardProductType": {
            "type": "string",
            "description": "The code of account funding source for the card, e.g. Credit, Debit, Prepaid, Charge, Deferred Debit.\n",
            "enum": [
              "Credit",
              "Debit",
              "Prepaid",
              "Charge",
              "Deferred Debit"
            ]
          },
          "cardSubtypeCode": {
            "type": "string",
            "description": "Visa Cards on Visa Network Only\n",
            "enum": [
              "RELOADABLE",
              "NON_RELOADABLE"
            ]
          },
          "issuerCountryCode": {
            "description": "Country code of the recipient issuer’s country.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "prepaidSubtypeCode": {
            "type": "string",
            "description": "Indicates the subtype code of prepaid product. This is a 2-character alphabetic code.(Visa Cards on Visa Network Only)\n",
            "enum": [
              "GP",
              "AC",
              "AE",
              "AG",
              "AI",
              "CG",
              "CS",
              "DS",
              "EN",
              "EX",
              "LP",
              "MA",
              "MB",
              "MG",
              "MX",
              "TK",
              "VA",
              "VF",
              "VM",
              "VN",
              "VR"
            ]
          },
          "billingCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "integer",
            "description": "Use a 3-digit numeric currency code for the card billing currency of the PAN.<br>Refer to <a href=\"/request_response_codes#currency_codes\">ISO Codes</a>\n   \n"
          },
          "visaCardPlatformCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Visa route cardPlatformCode indicates the type of card. This is a 2-character alphabetic code.\n"
          },
          "nonVisaCardPlatformCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Non-Visa route platform code indicates the type of card. This is a 2-character alphabetic code.\n"
          },
          "billingCurrencyCodeMinorDigits": {
            "type": "string",
            "description": "Identifies the number of decimal positions that should be present in any amounts for the requested card's billing currency.\n"
          },
          "pushFundsCrossBorderAuthApprovalInd": {
            "type": "string",
            "description": "Indicates an auth approval rate for Cross border OCT of the issuer account range/BIN of the recipient card for the last three months. Below are the possible values.(Visa Cards on Visa Network Only)\n",
            "enum": [
              "READY",
              "OPTIMIZED",
              "NON-OPTIMIZED"
            ]
          }
        }
      },
      "PersonDetails": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PersonName"
          },
          {
            "$ref": "#/components/schemas/Contact"
          },
          {
            "type": "object",
            "properties": {
              "address": {
                "$ref": "#/components/schemas/Address"
              }
            }
          }
        ]
      },
      "ValidatePayoutRequest-19": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-4"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-2"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutDigitalAssetRequest-1"
          }
        ]
      },
      "BusinessApplicationId": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Visa Direct Account & Wallet: \n- Money transfer: AA, PP, FT, WT; \n- Non-money transfer: BB, FD, GD, GP, LO, MD, OG, PD, BP, PS;\n",
        "example": "PP"
      },
      "ValidatePayoutRequest-18": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-18"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-18"
          }
        ]
      },
      "PaymentCredentialReference-3": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument",
            "example": "TOKEN123456789"
          },
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique Merchant Identification assigned by Token Service Provider",
            "example": "MERCHANT123"
          }
        },
        "description": "External reference to a payment credential"
      },
      "AccountandWalletPayoutResponse": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "ValidatePayoutRequest-17": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-5"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-3"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutDigitalAssetRequest-2"
          }
        ]
      },
      "PaymentCredentialReference-4": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID",
              "PAYNAME",
              "PHONE",
              "EMAIL",
              "DIRECTORY_ALIASID"
            ]
          },
          "value": {
            "maxLength": 128,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. If type is PAYNAME then length should be between 6 and 50 characters. Format should be +payname.domain. The payname, between '+' and '.' characters, should be minimum 3 characters.<br>  For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>  For \"PHONE\", \"EMAIL\", \"DIRECTORY_ALIASID\", length is 1-128 characters. <br> <br>  If phone number is used for alias, this should be provided in accordance with ITU-T E.164 (2010) number structure.  Please note that in the E.164 format, the '+' sign is not included. Below are some examples of phone numbers with different country codes - <br> <table>\n        <thead>\n            <tr>\n                <th>Country</th>\n                <th>Country Code</th>\n                <th>Examples</th>\n            </tr>\n        </thead>\n        <tbody>\n            <tr>\n                <td>United States</td>\n                <td>1</td>\n                <td>1650xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Ukraine</td>\n                <td>380</td>\n                <td>38067xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Belarus</td>\n                <td>375</td>\n                <td>37529xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Kazakhstan</td>\n                <td>7</td>\n                <td>7701xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>United Kingdom</td>\n                <td>44</td>\n                <td>4478xxxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Singapore</td>\n                <td>65</td>\n                <td>659xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Hong Kong</td>\n                <td>852</td>\n                <td>8529xxxxxxx</td>\n            </tr>\n            <tr>\n                <td>Kenya</td>\n                <td>254</td>\n                <td>254701xxxxxx</td>\n            </tr>\n        </tbody>\n    </table>\n",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "authenticationData": {
            "type": "object",
            "properties": {
              "cvv2": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "The cvv2 value provided by the account holder for the paymentCredentialReference in the request.",
                "example": "123"
              }
            }
          }
        },
        "description": "External reference to a payment credential"
      },
      "PaymentCredentialReference-1": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PCI_TOKEN_REFID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string"
          },
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique Merchant Identification assigned by Token Service Provider."
          }
        },
        "description": "Object to carry a payment instrument that is an alternative to PAN or network token e.g. PCI Token Reference ID.\n"
      },
      "PaymentCredentialReference-2": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID",
              "PAYNAME"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. If type is PAYNAME then length should be between 6 and 50 characters.Format should be +payname.domain. The payname, between '+' and '.' characters, should be minimum 3 characters.<br> For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "authenticationData": {
            "$ref": "#/components/schemas/RecipientAuthenticationData"
          }
        },
        "description": "External reference to a payment credential"
      },
      "UpdatePayoutRequest-4": {
        "required": [
          "actionCode",
          "idType",
          "initiatingPartyId",
          "payoutMethod"
        ],
        "type": "object",
        "properties": {
          "idType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionIdType-1"
              }
            ]
          },
          "actionCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/B2BCActionCode"
              }
            ]
          },
          "payoutMethod": {
            "type": "string",
            "description": "Payout Methods allowed for Update Payout Request\n",
            "enum": [
              "C"
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "mastercardMerchantPaymentGatewayId": {
            "maxLength": 11,
            "minLength": 1,
            "type": "string",
            "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.<b> Only applicable for pull reversal for Cards</b>\n"
          }
        }
      },
      "CardPayoutValidateRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest"
          }
        ]
      },
      "EODFlexibleSettlementNotification": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "notificationDateTime",
          "windowDueDetails"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "END_OF_DAY"
            ]
          },
          "windowDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WindowDueDetailsWithPullFunds"
            }
          },
          "currentDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WindowDueDetails"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "AccountQueryPendingResponse": {
        "$ref": "#/components/schemas/202AccountPayoutCreatedResponse"
      },
      "AccountSuffix": {
        "maxLength": 4,
        "minLength": 4,
        "type": "string",
        "description": "Last four digits of the card number/PAN \nNote: This is only relevant for push to card payouts, where a card network token was sent by the Originating Entity in the payout request (in the recipientDetail.card.accountNumber field).\n"
      },
      "FlexibleAmountRemaining-1": {
        "description": "Remaining amount of liquidity available.",
        "format": "double",
        "exampleSetFlag": false,
        "types": [
          "number"
        ]
      },
      "TimestampType-1": {
        "description": "ISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00\n\nexample: 2020-05-05T12:12:12.000Z, or 1997-07-16T19:20:30.45+00:00\n\nISO20022 field name: Transaction Information And Status - Message Creation Date Time\n",
        "format": "date-time",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "ValidatePayoutRequest-30": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-28"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-1"
          }
        ]
      },
      "VauData-1": {
        "type": "object",
        "properties": {
          "vauFlag": {
            "$ref": "#/components/schemas/VauFlag-1"
          },
          "accountStatus": {
            "$ref": "#/components/schemas/AccountStatus-1"
          },
          "vauerrorReasonCode": {
            "$ref": "#/components/schemas/VauErrorReasonCode-1"
          },
          "replacementCardAccountNumber": {
            "$ref": "#/components/schemas/ReplacementCardAccountNumber-1"
          },
          "replacementCardExpirationDate": {
            "$ref": "#/components/schemas/ReplacementCardExpirationDate-1"
          }
        }
      },
      "TransactionalAdditionalData-2": {
        "description": "Additional fields that are needed in order to complete the additional screening. The additional fields can be included as name value pairs (Field name, Field value)",
        "items": {
          "required": [
            "name",
            "value"
          ],
          "properties": {
            "name": {
              "description": "Originating Entity to send additional transaction information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the name component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataName-1"
                }
              ],
              "exampleSetFlag": false
            },
            "value": {
              "description": "Originating Entity to send additional transaction information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the value  component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataValue-1"
                }
              ],
              "exampleSetFlag": false
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "DigitalAssetLedgerCurrencyCode": {
        "type": "string",
        "description": "The cryptocurrency or fiat currency code",
        "example": "USDC",
        "enum": [
          "USDC",
          "PYUSD"
        ]
      },
      "TransactionalAdditionalData-1": {
        "type": "array",
        "description": "Additional fields that are needed in order to complete the additional screening. The additional fields can be included as name value pairs (Field name, Field value)",
        "items": {
          "required": [
            "name",
            "value"
          ],
          "type": "object",
          "properties": {
            "name": {
              "description": "Originating Entity to send additional transaction information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the name component of the name-value pair.\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataName"
                }
              ]
            },
            "value": {
              "description": "Originating Entity to send additional transaction information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the value  component of the name-value pair.\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataValue"
                }
              ]
            }
          }
        }
      },
      "PayoutMethodNotification": {
        "type": "string",
        "description": "Originating Entity must indicate the payout method i.e. Account, Wallet or Card\n\nValid values:\n- \"B\" Visa Direct Account\n- \"W\" Visa Direct Wallet\n",
        "enum": [
          "B",
          "W"
        ]
      },
      "ValidatePayoutRequest-34": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-32"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-29"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutDigitalAssetRequest-8"
          }
        ],
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidatePayoutRequest-33": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-31"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-28"
          }
        ]
      },
      "ValidatePayoutRequest-32": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-30"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-27"
          }
        ]
      },
      "ValidatePayoutRequest-31": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-29"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-26"
          }
        ],
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "Rules": {
        "required": [
          "items"
        ],
        "type": "object",
        "properties": {
          "items": {
            "minItems": 1,
            "type": "array",
            "description": "This section returns the required fields for a given condition.\n",
            "items": {
              "$ref": "#/components/schemas/RuleWithFields"
            }
          },
          "condition": {
            "type": "string",
            "description": "It refers to an 'id' value in the conditions[] array."
          }
        }
      },
      "ValidatePayoutRequest-35": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-33"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-30"
          }
        ]
      },
      "AccountPayoutResponse-4": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-5"
          }
        ]
      },
      "RejectReasonCode": {
        "type": "integer",
        "description": "Code indicating the reason for rejection"
      },
      "AccountPayoutResponse-3": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-2"
          }
        ]
      },
      "AccountPayoutResponse-2": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-3"
          }
        ]
      },
      "ValidatePayoutRequest-29": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-27"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-25"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutDigitalAssetRequest-7"
          }
        ]
      },
      "AccountPayoutResponse-1": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-1"
          }
        ]
      },
      "ValidatePayoutRequest-28": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ValidatePayoutAccountRequest-26"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutWalletRequest-24"
          },
          {
            "$ref": "#/components/schemas/ValidatePayoutCardRequest-14"
          }
        ]
      },
      "AccountPayoutResponse-8": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-9"
          }
        ],
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountPayoutResponse-7": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-8"
          }
        ]
      },
      "AccountPayoutResponse-6": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-7"
          }
        ]
      },
      "AccountPayoutResponse-5": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutResponse-6"
          }
        ],
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RecipientContactNumber": {
        "pattern": "^\\+[0-9]+$",
        "type": "string",
        "description": "Recipient contact number. + symbol followed by digits, no other symbols,  e.g. +447809713678.\n",
        "example": "+447700123456"
      },
      "AccountSenderIsCompany-1": {
        "required": [
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanySenderIdentificationListAccount-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountSenderIsCompany-2": {
        "required": [
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanySenderIdentificationListAccount-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountPayoutRequest": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest"
          }
        ]
      },
      "AccountSenderIsCompany-3": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanySenderIdentificationListAccount-3"
          }
        }
      },
      "ValidatePayoutDigitalAssetRequestAltered": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered"
          }
        ]
      },
      "PayoutCancelStatus-1": {
        "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n",
        "example": "CANCELLED",
        "enum": [
          "PENDING_CANCELLATION",
          "CANCELLED"
        ],
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "IdentityGroup-1": {
        "title": "IdentityGroup",
        "required": [
          "groupLabel",
          "groupName",
          "identityFields",
          "mandatory"
        ],
        "type": "object",
        "properties": {
          "groupName": {
            "type": "string",
            "description": "The name of the metadata element/enum.\nThis generic Identity Group object can represent either 'Beneficiary Identity Field Group object' or 'Bank Account Registration Field Group object' . \nEnum value signifies the particular metadata element. \n\nFor example : \n a) if enum is \"address\", this can contain array of 'IdentityField' object where each object can represent elements like addressLine1, addressLine2, city, countryCode, postalCode etc    \n\n b) enum can be \"identificationList\", which contains array of \"IdentityField' objects, one of the IdentityField object can have elementName=\"idType\" and inputType=\"list\", in this scenario array of IdentityListItem will have \n [\n   {\n     \"label\": \"Passport\",\n     \"value\": \"Passport\"\n   },\n   {\n     \"label\": \"National ID Card\",\n     \"value\": \"National ID Card\"\n   },\n   {\n     \"label\": \"Driving License\",\n     \"value\": \"Driving License\"\n   }\n ], \n second 'IdentityField' Object -> elementName as \"identificationNumber\" with inputType=\"text\" \n third 'IdentityField' Object -> elementName as \"identificationCountry\" with inputType=\"text\" \n fourth 'IdentityField' Object -> elementName as \"validFromDate\" with inputType=\"text\"\n fifth  'IdentityField' Object -> elementName as \"validToDate\" with inputType=\"text\" and so on.\n\n c) If enum is \"additionalData\",this will have array of two 'IdentityField' objects, one representing 'additionalDataKey' and other one 'additionalDataValue'.\n\n d) If enum is \"name\", \"middleName\" may be required for some countries (e.g. Africa). This can be accommodated by appending a space and then middleName to <firstName> \n",
            "enum": [
              "bank",
              "address",
              "name",
              "additionalData",
              "identificationList",
              "legalEntityIdentity",
              "contactInfo",
              "birthInfo"
            ]
          },
          "mandatory": {
            "type": "boolean",
            "description": "Indicates if the identity group is mandatory."
          },
          "groupLabel": {
            "type": "string",
            "description": "Displays a label for this group of identity fields."
          },
          "identityFields": {
            "type": "array",
            "description": "This type defines a list of recipient identity fields.",
            "items": {
              "$ref": "#/components/schemas/IdentityField"
            }
          }
        },
        "description": "This type defines a recipient identity data group. Each group is normally represented as a section of fields on the UI. 'groupLabel' is the UI test to display as a name for this section. 'mandatory' indicates whether all section is mandatory. 'elementName' is the name of the element in the request for the corresponding section."
      },
      "IdNumber": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "In this field, the identification number (from the document type identified in the field recipientDetail.idType) should be provided.",
        "example": "1234567890"
      },
      "IdentityGroup-3": {
        "title": "IdentityGroup",
        "required": [
          "groupLabel",
          "groupName",
          "identityFields",
          "mandatory"
        ],
        "properties": {
          "groupName": {
            "description": "The name of the metadata element/enum.\nThis generic Identity Group object can represent either 'Recipient Identity Field Group object' or 'Bank Account Registration Field Group object' . \nEnum value signifies the particular metadata element. \n\nFor example : \n a) if enum is \"address\", this can contain array of 'IdentityField' object where each object can represent elements like addressLine1, addressLine2, city, countryCode, postalCode etc    \n\n b) enum can be \"identificationList\", which contains array of \"IdentityField' objects, one of the IdentityField object can have elementName=\"idType\" and inputType=\"list\", in this scenario array of IdentityListItem will have \n [\n   {\n     \"label\": \"Passport\",\n     \"value\": \"Passport\"\n   },\n   {\n     \"label\": \"National ID Card\",\n     \"value\": \"National ID Card\"\n   },\n   {\n     \"label\": \"Driving License\",\n     \"value\": \"Driving License\"\n   }\n ], \n second 'IdentityField' Object -> elementName as \"identificationNumber\" with inputType=\"text\" \n third 'IdentityField' Object -> elementName as \"identificationCountry\" with inputType=\"text\" \n fourth 'IdentityField' Object -> elementName as \"validFromDate\" with inputType=\"text\"\n fifth  'IdentityField' Object -> elementName as \"validToDate\" with inputType=\"text\" and so on.\n\n c) If enum is \"additionalData\",this will have array of two 'IdentityField' objects, one representing 'additionalDataKey' and other one 'additionalDataValue'.\n\n d) If enum is \"name\", \"middleName\" may be required for some countries (e.g. Africa). This can be accommodated by appending a space and then middleName to <firstName>\n",
            "enum": [
              "bank",
              "address",
              "name",
              "additionalData",
              "identificationList",
              "legalEntityIdentity",
              "contactInfo",
              "birthInfo"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "mandatory": {
            "description": "Indicates if the identity group is mandatory.",
            "exampleSetFlag": false,
            "types": [
              "boolean"
            ]
          },
          "groupLabel": {
            "description": "Displays a label for this group of identity fields.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "identityFields": {
            "description": "This type defines a list of recipient identity fields.",
            "items": {
              "$ref": "#/components/schemas/IdentityField-1"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          }
        },
        "description": "This type defines a recipient identity data group. Each group is normally represented as a section of fields on the UI. 'groupLabel' is the UI test to display as a name for this section. 'mandatory' indicates whether all section is mandatory. 'elementName' is the name of the element in the request for the corresponding section.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "IdentityGroup-2": {
        "title": "IdentityGroup",
        "required": [
          "groupLabel",
          "groupName",
          "identityFields",
          "mandatory"
        ],
        "type": "object",
        "properties": {
          "groupName": {
            "type": "string",
            "description": "The name of the metadata element/enum.\nThis generic Identity Group object can represent either 'Recipient Identity Field Group object' or 'Bank Account Registration Field Group object' . \nEnum value signifies the particular metadata element. \n\nFor example : \n a) if enum is \"address\", this can contain array of 'IdentityField' object where each object can represent elements like addressLine1, addressLine2, city, countryCode, postalCode etc    \n\n b) enum can be \"identificationList\", which contains array of \"IdentityField' objects, one of the IdentityField object can have elementName=\"idType\" and inputType=\"list\", in this scenario array of IdentityListItem will have \n [\n   {\n     \"label\": \"Passport\",\n     \"value\": \"Passport\"\n   },\n   {\n     \"label\": \"National ID Card\",\n     \"value\": \"National ID Card\"\n   },\n   {\n     \"label\": \"Driving License\",\n     \"value\": \"Driving License\"\n   }\n ], \n second 'IdentityField' Object -> elementName as \"identificationNumber\" with inputType=\"text\" \n third 'IdentityField' Object -> elementName as \"identificationCountry\" with inputType=\"text\" \n fourth 'IdentityField' Object -> elementName as \"validFromDate\" with inputType=\"text\"\n fifth  'IdentityField' Object -> elementName as \"validToDate\" with inputType=\"text\" and so on.\n\n c) If enum is \"additionalData\",this will have array of two 'IdentityField' objects, one representing 'additionalDataKey' and other one 'additionalDataValue'.\n\n d) If enum is \"name\", \"middleName\" may be required for some countries (e.g. Africa). This can be accommodated by appending a space and then middleName to <firstName> \n",
            "enum": [
              "bank",
              "address",
              "name",
              "additionalData",
              "identificationList",
              "legalEntityIdentity",
              "contactInfo",
              "birthInfo"
            ]
          },
          "mandatory": {
            "type": "boolean",
            "description": "Indicates if the identity group is mandatory."
          },
          "groupLabel": {
            "type": "string",
            "description": "Displays a label for this group of identity fields."
          },
          "identityFields": {
            "type": "array",
            "description": "This type defines a list of recipient identity fields.",
            "items": {
              "$ref": "#/components/schemas/IdentityField"
            }
          }
        },
        "description": "This type defines a recipient identity data group. Each group is normally represented as a section of fields on the UI. 'groupLabel' is the UI test to display as a name for this section. 'mandatory' indicates whether all section is mandatory. 'elementName' is the name of the element in the request for the corresponding section."
      },
      "ExpectedPostingDate-1": {
        "maxLength": 10,
        "minLength": 10,
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds.\n\nISO20022 field name: Interbank Settlement Date\n",
        "format": "date",
        "example": "1980-02-01"
      },
      "ValidateAccountTransactionDetail-6": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "SenderSourceOfFunds": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Source of funds for the sender"
      },
      "ExpectedPostingDate-2": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nISO20022 field name: Transaction Information And Status - Effective Interbank Settlement Date\n",
        "format": "date"
      },
      "ValidateAccountTransactionDetail-5": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-3"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-2"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ExpectedPostingDate-3": {
        "maxLength": 10,
        "minLength": 10,
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nISO20022 field name: Transaction Information And Status - Effective Interbank Settlement Date\n",
        "format": "date",
        "example": "1980-02-01"
      },
      "ValidateAccountTransactionDetail-8": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ValidateAccountTransactionDetail-7": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ExpectedPostingDate-4": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds\n\nIt is optional field, if exists, indicates expected posting date change\n\nISO20022 field name: Interbank Settlement Date\n",
        "format": "date"
      },
      "WalletQueryOnlyResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "RecipientDetailMetadata": {
        "title": "RecipientDetail",
        "required": [
          "identityGroups"
        ],
        "type": "object",
        "properties": {
          "identityGroups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IdentityGroup"
            }
          }
        }
      },
      "ValidateAccountTransactionDetail-9": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "CardQueryResponse-10": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-9"
          }
        ]
      },
      "AccountTransactionDetail-9": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-3"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "$ref": "#/components/schemas/StatementNarrative"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-4"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AccountTransactionDetail-8": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-2"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "paymentRail": {
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-2"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel-1"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-2"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-5"
              }
            ],
            "exampleSetFlag": false
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-4"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-3"
              }
            ],
            "exampleSetFlag": false
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-3"
              }
            ],
            "exampleSetFlag": false
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountTransactionDetail-7": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-2"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-4"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AccountTransactionDetail-6": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-3"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AccountTransactionDetail-5": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-2"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "paymentRail": {
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-1"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel-1"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-2"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-5"
              }
            ],
            "exampleSetFlag": false
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-4"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "statementNarrative": {
            "$ref": "#/components/schemas/StatementNarrative-3"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-2"
              }
            ],
            "exampleSetFlag": false
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountTransactionDetail-4": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AccountTransactionDetail-3": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-3"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-2"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "CardQueryResponse-11": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse-10"
          }
        ]
      },
      "QueryOriginatorDetail": {
        "required": [
          "acquiringBin"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          }
        }
      },
      "AccountTransactionDetail-2": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "DigitalAssetValidatePayoutResponse-13": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-13"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-12"
          }
        ],
        "exampleSetFlag": false
      },
      "AccountTransactionDetail-1": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "DigitalAssetValidatePayoutResponse-14": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-14"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-15"
          }
        ],
        "exampleSetFlag": false
      },
      "DigitalAssetValidatePayoutResponse-12": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-12"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "DigitalAssetValidatePayoutResponse-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse-15"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse-17"
          }
        ]
      },
      "BusinessApplicationId-1": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Identifies the programs' business application type for VisaNet transaction processing",
        "example": "PP"
      },
      "WalletQueryOnlyResponse-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "OriginalDataElements-2": {
        "required": [
          "acquiringBin",
          "systemsTraceAuditNumber",
          "transmissionDateTime"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-3"
          },
          "approvalCode": {
            "maxLength": 6,
            "minLength": 1,
            "type": "string",
            "description": "Approval code from the original transaction",
            "example": "123456"
          },
          "transmissionDateTime": {
            "type": "string",
            "description": "Date and time of the original transaction transmission",
            "format": "date-time",
            "example": "2023-06-15T14:25:32Z"
          },
          "systemsTraceAuditNumber": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber-1"
          }
        },
        "description": "Data elements from the original transaction that is being reversed"
      },
      "WalletQueryOnlyResponse-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-5"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse-1"
          }
        ]
      },
      "OriginalDataElements-1": {
        "required": [
          "acquiringBin",
          "systemsTraceAuditNumber",
          "transmissionDateTime"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-2"
          },
          "approvalCode": {
            "maxLength": 6,
            "minLength": 1,
            "type": "string",
            "description": "Approval code from the original transaction",
            "example": "123456"
          },
          "transmissionDateTime": {
            "type": "string",
            "description": "Date and time of the original transaction transmission",
            "format": "date-time",
            "example": "2023-06-15T14:25:32Z"
          },
          "systemsTraceAuditNumber": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber-1"
          }
        },
        "description": "Data elements from the original transaction that is being reversed"
      },
      "PayoutDigitalAssetRequestAltered-10": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-13"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetSenderTransactorDetailWithID-3"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset"
            ],
            "properties": {
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset"
              },
              "countryOfBirth": {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DigitalAssetRecipientTransactorDetailWithID-10"
              }
            ]
          }
        }
      },
      "WalletQueryOnlyResponse-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse-1"
          }
        ]
      },
      "WalletQueryOnlyResponse-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-3"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "WalletQueryOnlyResponse-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-2"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "WalletQueryOnlyResponse-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-1"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse"
          }
        ]
      },
      "CardTransactionResponse": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardTransactionStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "FlexibleAmountLimit": {
        "type": "number",
        "description": "Liquidity limit.",
        "format": "double"
      },
      "WalletQueryOnlyResponse-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletQueryOnlySuccessResponse-5"
          },
          {
            "$ref": "#/components/schemas/WalletQueryOnlyErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/WalletQueryPendingOnlyCancelledResponse-1"
          }
        ]
      },
      "CardTransactionDetail-4": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail-3"
          }
        ]
      },
      "CardTransactionDetail-5": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail-4"
          }
        ]
      },
      "CardTransactionDetail-2": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "surcharge": {
            "description": "When present, this field contains surcharge as assessed by the Originating Entity. Values in this field must be included in the transactionAmount and should be in the same currency and format as defined in the transactionAmount field.\n\nNote: if card credential is provided in senderDetail, fund is debited by transactionAmount from sender's card; but credited by transactionAmount - surcharge to recipient's card\nTechnical Specifications - Appendix E Country and Currency codes for VDC.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "purposeOfPayment": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
            "example": "ISBEXP"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount should be numeric. Refer to the Payouts Endpoint Guide on country-specific currency minor units. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for Card.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JOD is 3, the amount is JOD 100.996.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Push to Cards:\n-\tMoney transfer: AA, PP, BI, FT, WT; \n-\tNon-money transfer: BB, BP, CP, FD, GD, GP, LO, MD, OG, PD\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessApplicationId-2"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Instructed Amount Currency Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "description": "The date and time when the transaction takes place, expressed in the local time of the Originating Entity request\n\nFormat: YYYY-MM-DDThh:mm:ss\n\nISO20022 field name: Message Creation Date Time\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardTransactionDetail-3": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail-2"
          }
        ]
      },
      "ValidateAccountTransactionDetail-2": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ValidateAccountTransactionDetail-1": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "paymentRail": {
            "type": "string",
            "description": "Indicates the payment rails preferred for the payout transaction.",
            "example": "SWIFT",
            "enum": [
              "SWIFT"
            ]
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "CardTransactionDetail-1": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail-1"
          }
        ]
      },
      "ValidateAccountTransactionDetail-4": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-3"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-2"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ValidateAccountTransactionDetail-3": {
        "required": [
          "businessApplicationId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "structuredRemittance": {
            "description": "This object carries ISO20022 SMI data. It applies to Visa Direct Account payouts only.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionalStructuredRemittance-1"
              }
            ]
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "AdjustmentRequestData-9": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "type": "object",
            "properties": {
              "card": {
                "type": "object",
                "properties": {
                  "merchantId": {
                    "type": "string",
                    "description": "Merchant ID for token services",
                    "example": "MERCHANT001"
                  },
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "Account number of the sender's card",
                    "example": "4111111111111111"
                  },
                  "expirationDate": {
                    "$ref": "#/components/schemas/CardExpiryDate"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT",
                      "PCI_TOKEN_REFID"
                    ]
                  }
                }
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-1"
              }
            },
            "description": "Details about the sender"
          },
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/OCTCardAcceptor-8"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO numeric country code",
                "example": "840"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "card": {
                "type": "object",
                "properties": {
                  "posData": {
                    "$ref": "#/components/schemas/PosData-2"
                  }
                },
                "description": "Card-related transaction data"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "schemeIdentifier": {
                "$ref": "#/components/schemas/SchemeIdentifier"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "tokenAssuranceMethod": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "Method used for token assurance",
                "example": "01"
              },
              "businessApplicationId": {
                "$ref": "#/components/schemas/BusinessApplicationId-1"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                }
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "AdjustmentRequestData-8": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "type": "object",
            "properties": {
              "card": {
                "type": "object",
                "properties": {
                  "merchantId": {
                    "type": "string",
                    "description": "Merchant ID for token services",
                    "example": "MERCHANT001"
                  },
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "Account number of the sender's card",
                    "example": "4111111111111111"
                  },
                  "expirationDate": {
                    "$ref": "#/components/schemas/CardExpiryDate"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT",
                      "PCI_TOKEN_REFID"
                    ]
                  }
                }
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-1"
              }
            },
            "description": "Details about the sender"
          },
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/OCTCardAcceptor-7"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO numeric country code",
                "example": "840"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "card": {
                "type": "object",
                "properties": {
                  "posData": {
                    "$ref": "#/components/schemas/PosData-2"
                  }
                },
                "description": "Card-related transaction data"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "schemeIdentifier": {
                "$ref": "#/components/schemas/SchemeIdentifier"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "tokenAssuranceMethod": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "Method used for token assurance",
                "example": "01"
              },
              "businessApplicationId": {
                "$ref": "#/components/schemas/BusinessApplicationId-1"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                }
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "EODFlexibleSettlementNotification-5": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "notificationDateTime",
          "windowDueDetails"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "END_OF_DAY"
            ]
          },
          "windowDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WindowDueDetailsWithPullFunds-4"
            }
          },
          "currentDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WindowDueDetails-3"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "AdjustmentRequestData-7": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "type": "object",
            "properties": {
              "card": {
                "type": "object",
                "properties": {
                  "merchantId": {
                    "type": "string",
                    "description": "Merchant ID for token services",
                    "example": "MERCHANT001"
                  },
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "Account number of the sender's card",
                    "example": "4111111111111111"
                  },
                  "expirationDate": {
                    "$ref": "#/components/schemas/CardExpiryDate"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT",
                      "PCI_TOKEN_REFID"
                    ]
                  }
                }
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-1"
              }
            },
            "description": "Details about the sender"
          },
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/OCTCardAcceptor-6"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO numeric country code",
                "example": "840"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "card": {
                "type": "object",
                "properties": {
                  "posData": {
                    "$ref": "#/components/schemas/PosData-2"
                  }
                },
                "description": "Card-related transaction data"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "schemeIdentifier": {
                "$ref": "#/components/schemas/SchemeIdentifier"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "tokenAssuranceMethod": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "Method used for token assurance",
                "example": "01"
              },
              "businessApplicationId": {
                "$ref": "#/components/schemas/BusinessApplicationId-1"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                }
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "EODFlexibleSettlementNotification-4": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "notificationDateTime",
          "windowDueDetails"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "END_OF_DAY"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "windowDueDetails": {
            "items": {
              "$ref": "#/components/schemas/WindowDueDetailsWithPullFunds-3"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "currentDueDetails": {
            "items": {
              "$ref": "#/components/schemas/WindowDueDetails-2"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "VauData": {
        "type": "object",
        "properties": {
          "vauFlag": {
            "$ref": "#/components/schemas/VauFlag"
          },
          "accountStatus": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "vauerrorReasonCode": {
            "$ref": "#/components/schemas/VauErrorReasonCode"
          },
          "replacementCardAccountNumber": {
            "$ref": "#/components/schemas/ReplacementCardAccountNumber"
          },
          "replacementCardExpirationDate": {
            "$ref": "#/components/schemas/ReplacementCardExpirationDate"
          }
        }
      },
      "AdjustmentRequestData-5": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/AdjustmentCardAcceptor-1"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "3-digit numeric or 3-character alpha ISO country code <br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "example": "USA"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "posData": {
                "required": [
                  "motoECIIndicator",
                  "panEntryMode",
                  "posConditionCode"
                ],
                "type": "object",
                "properties": {
                  "panEntryMode": {
                    "$ref": "#/components/schemas/PanEntryMode"
                  },
                  "motoECIIndicator": {
                    "$ref": "#/components/schemas/MotoECIIndicator-1"
                  },
                  "posConditionCode": {
                    "$ref": "#/components/schemas/PosConditionCode"
                  }
                }
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdjustmentTransactionDetailAdditionalData"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator-1"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "BusinessApplicationId-4": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Visa Direct Account & Wallet: \n- Money transfer: AA, PP, FT, WT; \n- Non-money transfer: BB, FD, GD, GP, LO, MD, OG, PD, BP;\n",
        "example": "PP"
      },
      "CardTransactionDetail-8": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail-7"
          }
        ]
      },
      "AdjustmentRequestData-4": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "type": "object",
            "properties": {
              "card": {
                "type": "object",
                "properties": {
                  "merchantId": {
                    "type": "string",
                    "description": "Merchant ID for token services",
                    "example": "MERCHANT001"
                  },
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "Account number of the sender's card",
                    "example": "4111111111111111"
                  },
                  "expirationDate": {
                    "$ref": "#/components/schemas/CardExpiryDate"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT",
                      "PCI_TOKEN_REFID"
                    ]
                  }
                }
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-1"
              }
            },
            "description": "Details about the sender"
          },
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/OCTCardAcceptor-3"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO numeric country code",
                "example": "840"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "card": {
                "type": "object",
                "properties": {
                  "posData": {
                    "$ref": "#/components/schemas/PosData-2"
                  }
                },
                "description": "Card-related transaction data"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "schemeIdentifier": {
                "$ref": "#/components/schemas/SchemeIdentifier"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "tokenAssuranceMethod": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "Method used for token assurance",
                "example": "01"
              },
              "businessApplicationId": {
                "$ref": "#/components/schemas/BusinessApplicationId-1"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                }
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "CardTransactionDetail-9": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail-8"
          }
        ]
      },
      "AdjustmentRequestData-3": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "type": "object",
            "properties": {
              "card": {
                "type": "object",
                "properties": {
                  "merchantId": {
                    "type": "string",
                    "description": "Merchant ID for token services",
                    "example": "MERCHANT001"
                  },
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "Account number of the sender's card",
                    "example": "4111111111111111"
                  },
                  "expirationDate": {
                    "$ref": "#/components/schemas/CardExpiryDate"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT",
                      "PCI_TOKEN_REFID"
                    ]
                  }
                }
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-1"
              }
            },
            "description": "Details about the sender"
          },
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/OCTCardAcceptor-2"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO numeric country code",
                "example": "840"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "card": {
                "type": "object",
                "properties": {
                  "posData": {
                    "$ref": "#/components/schemas/PosData-2"
                  }
                },
                "description": "Card-related transaction data"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-2"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "schemeIdentifier": {
                "$ref": "#/components/schemas/SchemeIdentifier"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "tokenAssuranceMethod": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "Method used for token assurance",
                "example": "01"
              },
              "businessApplicationId": {
                "$ref": "#/components/schemas/BusinessApplicationId-1"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                }
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "BusinessApplicationId-5": {
        "maxLength": 2,
        "minLength": 2,
        "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Visa Direct Account & Wallet: \n- Money transfer: AA, PP, FT, WT; \n- Non-money transfer: BB, FD, GD, GP, LO, MD, OG, PD, BP, PS;\n",
        "example": "PP",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AdjustmentRequestData-2": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/AdjustmentCardAcceptor"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO numeric country code",
                "example": "840"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-1"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "BusinessApplicationId-2": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Visa Direct Account & Wallet: \n- Money transfer: AA, PP; \n- Non-money transfer: BB, FD, GD, GP, LO, MD, OG, PD;\n",
        "example": "PP"
      },
      "CardTransactionDetail-6": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail-5"
          }
        ]
      },
      "AdjustmentRequestData-1": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "type": "object",
            "properties": {
              "card": {
                "type": "object",
                "properties": {
                  "merchantId": {
                    "type": "string",
                    "description": "Merchant ID for token services",
                    "example": "MERCHANT001"
                  },
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "Account number of the sender's card",
                    "example": "4111111111111111"
                  },
                  "expirationDate": {
                    "$ref": "#/components/schemas/CardExpiryDate"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT",
                      "PCI_TOKEN_REFID"
                    ]
                  }
                }
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-1"
                }
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-1"
              }
            },
            "description": "Details about the sender"
          },
          "originatorDetail": {
            "required": [
              "acquirerCountryCode",
              "acquiringBin",
              "cardAcceptor"
            ],
            "type": "object",
            "properties": {
              "acquiringBin": {
                "type": "integer",
                "description": "Bank Identification Number",
                "example": 412345
              },
              "cardAcceptor": {
                "$ref": "#/components/schemas/OCTCardAcceptor-1"
              },
              "acquirerCountryCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO numeric country code",
                "example": "840"
              }
            },
            "description": "Details about the originator of the adjustment"
          },
          "transactionDetail": {
            "required": [
              "adjustmentType",
              "clientReferenceId",
              "id",
              "idType",
              "localTransactionDateTime",
              "transactionAmount",
              "transactionCurrencyCode"
            ],
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Transaction identifier value",
                "example": "123456789012345"
              },
              "card": {
                "type": "object",
                "properties": {
                  "posData": {
                    "$ref": "#/components/schemas/PosData-1"
                  }
                },
                "description": "Card-related transaction data"
              },
              "fees": {
                "type": "object",
                "properties": {
                  "surcharge": {
                    "type": "string",
                    "description": "Surcharge amount for the transaction",
                    "format": "double",
                    "example": "5.00"
                  }
                }
              },
              "idType": {
                "type": "string",
                "description": "Type of identifier being used to identify the transaction",
                "example": "TRANSACTION_IDENTIFIER",
                "enum": [
                  "TRANSACTION_IDENTIFIER"
                ]
              },
              "additionalData": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AdditionalData-1"
                }
              },
              "adjustmentType": {
                "type": "string",
                "description": "Type of adjustment being requested",
                "example": "PULL_CREDIT",
                "enum": [
                  "PULL_CREDIT",
                  "SALES_TAX_PUSH_DEBIT"
                ]
              },
              "schemeIdentifier": {
                "$ref": "#/components/schemas/SchemeIdentifier"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-1"
              },
              "transactionAmount": {
                "type": "number",
                "description": "Amount of the transaction being adjusted",
                "format": "double",
                "example": 100
              },
              "tokenAssuranceMethod": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "Method used for token assurance",
                "example": "01"
              },
              "businessApplicationId": {
                "$ref": "#/components/schemas/BusinessApplicationId-1"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                }
              },
              "transactionCurrencyCode": {
                "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionCurrencyCode"
                  }
                ]
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "localTransactionDateTime": {
                "type": "string",
                "description": "Local date and time of the original transaction",
                "format": "date-time",
                "example": "2025-05-20T14:25:32Z"
              },
              "settlementServiceIndicator": {
                "$ref": "#/components/schemas/SettlementServiceIndicator"
              }
            },
            "description": "Transaction details for adjustment"
          }
        },
        "description": "Request data for card transaction adjustment"
      },
      "BusinessApplicationId-3": {
        "maxLength": 2,
        "minLength": 2,
        "type": "string",
        "description": "Business Application Identifier (BAI) identifies the type of program for which the payment is being sent, i.e. whether it is a funds disbursement, money transfer etc. It should be a valid value allowed by Visa and approved for the program during onboarding.\n\nValid BAI for Visa Direct Account & Wallet: \n- Money transfer: AA, PP; \n- Non-money transfer: BB, FD, GD, GP, LO, MD, OG, PD, BP;\n",
        "example": "PP"
      },
      "CardTransactionDetail-7": {
        "required": [
          "clientReferenceId"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/CardTransactionValidateDetail-6"
          }
        ]
      },
      "RecipientCompany-14": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-13"
          }
        }
      },
      "EODFlexibleSettlementNotification-1": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "notificationDateTime",
          "windowDueDetails"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "END_OF_DAY"
            ]
          },
          "windowDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WindowDueDetailsWithPullFunds-1"
            }
          },
          "currentDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WindowDueDetails"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "OCTRequestData-1": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-1"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-1"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "RecipientCompany-13": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-12"
          }
        }
      },
      "OCTRequestData-2": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-1"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-2"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "EODFlexibleSettlementNotification-3": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "notificationDateTime",
          "windowDueDetails"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "END_OF_DAY"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "windowDueDetails": {
            "items": {
              "$ref": "#/components/schemas/WindowDueDetailsWithPullFunds-2"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "currentDueDetails": {
            "items": {
              "$ref": "#/components/schemas/WindowDueDetails-1"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "EODFlexibleSettlementNotification-2": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "notificationDateTime",
          "windowDueDetails"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "END_OF_DAY"
            ]
          },
          "windowDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WindowDueDetails"
            }
          },
          "currentDueDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WindowDueDetails"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "OCTRequestData-3": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-2"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-2"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-2"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-3"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTPaymentFacilitator-8": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/OCTAdditionalAcceptor"
          }
        },
        "description": "Payment facilitator details for Original Credit Transaction"
      },
      "OCTPaymentFacilitator-7": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/OCTAdditionalAcceptor"
          }
        },
        "description": "Payment facilitator details for Original Credit Transaction"
      },
      "ServiceProcessingType": {
        "required": [
          "requestType"
        ],
        "type": "object",
        "properties": {
          "requestType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string"
          },
          "deferredDateTime": {
            "maxLength": 12,
            "minLength": 12,
            "type": "string"
          }
        }
      },
      "OCTPaymentFacilitator-9": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/OCTAdditionalAcceptor"
          }
        },
        "description": "Payment facilitator details for Original Credit Transaction"
      },
      "AccountQueryResponse-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-7"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-16"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse-1"
          }
        ]
      },
      "OCTPaymentFacilitator-2": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/OCTAdditionalAcceptor"
          }
        },
        "description": "Payment facilitator details for Original Credit Transaction"
      },
      "OCTPaymentFacilitator-1": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/OCTAdditionalAcceptor"
          }
        },
        "description": "Payment facilitator details for Original Credit Transaction"
      },
      "OCTPaymentFacilitator-4": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId-1"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName-1"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-2"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/OCTAdditionalAcceptor"
          }
        },
        "description": "Payment facilitator details for Original Credit Transaction"
      },
      "OCTPaymentFacilitator-3": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/OCTAdditionalAcceptor"
          }
        },
        "description": "Payment facilitator details for Original Credit Transaction"
      },
      "OCTPaymentFacilitator-6": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PaymentFacilitatorId"
          },
          "name": {
            "$ref": "#/components/schemas/PaymentFacilitatorName"
          },
          "address": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddress-1"
          },
          "additionalAcceptor": {
            "$ref": "#/components/schemas/OCTAdditionalAcceptor"
          }
        },
        "description": "Payment facilitator details for Original Credit Transaction"
      },
      "AccountQueryOnlyErrorResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "AFTResponseCardAcceptor-1": {
        "type": "object",
        "properties": {
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-2"
          }
        }
      },
      "AccountQueryResponse-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-1"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse"
          }
        ]
      },
      "AccountQueryResponse-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse"
          }
        ]
      },
      "AccountQueryOnlySuccessResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQueryResponse-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-3"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse"
          }
        ]
      },
      "AccountQueryResponse-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-5"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse"
          }
        ]
      },
      "AccountQueryResponse-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-6"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingResponse-1"
          }
        ]
      },
      "NotificationsErrorResponseWithKey": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/NotificationsErrorResponseWithKey"
              }
            ]
          }
        }
      },
      "PayoutToWalletRequest-8": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-9"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-2"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-7"
              }
            ]
          }
        }
      },
      "AccountQueryResponse-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse"
          }
        ]
      },
      "PayoutToWalletRequest-9": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-10"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "industryCode": {
                "$ref": "#/components/schemas/industryCode"
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-3"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-4"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-8"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountQueryResponse-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-8"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-15"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse-4"
          }
        ]
      },
      "RecipientCompany": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress"
          }
        }
      },
      "AccountQueryResponse-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-16"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse-1"
          }
        ]
      },
      "AFTAdditionalAcceptor": {
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "description": "Multiple ids can be provided for additional Acceptor. Duplicate instance of same idType is not allowed eg. One instance of Gateways and RampProvider can be present in the same request but multiple instances of same idType like Gateways is not allowed.",
            "items": {
              "$ref": "#/components/schemas/AdditionalAcceptorId"
            }
          },
          "foreignRetailerIndicator": {
            "type": "string",
            "description": "Identifies a foreign retailer under a marketplace and/or payment facilitator. <br>May also Identify a foreign Conversion Affiliate under a Ramp <br>This tag must contain either: <br><br>A – Conversion Affiliate is located in the same country as Ramp provider<br>B – Conversion Affiliate is located in a different country as Ramp provider"
          }
        }
      },
      "PayoutToWalletRequest-4": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail"
              }
            ]
          }
        }
      },
      "PayoutToWalletRequest-5": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-6"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-2"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-4"
              }
            ]
          }
        }
      },
      "DigitalAssetQuerySuccessResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail"
              }
            }
          }
        }
      },
      "PersonName": {
        "type": "object",
        "properties": {
          "lastName": {
            "maxLength": 35,
            "minLength": 2,
            "type": "string"
          },
          "firstName": {
            "maxLength": 35,
            "minLength": 2,
            "type": "string"
          },
          "middleName": {
            "maxLength": 35,
            "minLength": 2,
            "type": "string"
          }
        }
      },
      "ReturnReasonCodeDetailsType-1": {
        "type": "string",
        "description": "Indicates the PSP return type when the payout is returned. Refer to PSP Return Type (add link to VDP)\n\nISO20022 field name: Payment Return - PSP Return Type\n",
        "enum": [
          "REJECTED",
          "RETURNED"
        ]
      },
      "PayoutToWalletRequest-6": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-7"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-2"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-5"
              }
            ]
          }
        }
      },
      "PayoutToWalletRequest-7": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-8"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-2"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-6"
              }
            ]
          }
        }
      },
      "PayoutToWalletRequest-1": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "VauFlag": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Flag indicating Visa AU status",
        "example": "Y"
      },
      "PayoutToWalletRequest-2": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "LowValueExemptionIndicator": {
        "type": "string",
        "description": "Low value exemption indicator",
        "enum": [
          "true",
          "false"
        ]
      },
      "PayoutToWalletRequest-3": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-8"
              }
            ]
          }
        }
      },
      "AccountQuerySuccessResponse-9": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-3"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-4"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-3"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "Recipient-2": {
        "required": [
          "primaryAccountNumber"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAddress-2"
          },
          "cardExpiryDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "primaryAccountNumber": {
            "$ref": "#/components/schemas/PrimaryAccountNumber"
          }
        }
      },
      "AccountQuerySuccessResponse-8": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-3"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-3"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "Recipient-3": {
        "required": [
          "primaryAccountNumber"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RecipientName-1"
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAddress-3"
          },
          "cardExpiryDate": {
            "$ref": "#/components/schemas/CardExpiryDate-1"
          },
          "primaryAccountNumber": {
            "$ref": "#/components/schemas/PrimaryAccountNumber"
          }
        }
      },
      "Recipient-1": {
        "required": [
          "primaryAccountNumber"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RecipientName"
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAddress-1"
          },
          "cardExpiryDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "primaryAccountNumber": {
            "$ref": "#/components/schemas/PrimaryAccountNumber"
          }
        }
      },
      "AccountQuerySuccessResponse-5": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQuerySuccessResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-1"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQuerySuccessResponse-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail"
              }
            }
          }
        }
      },
      "AccountQuerySuccessResponse-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-3"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-2"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Transaction Information And Status - Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the beneficiary account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the beneficiary bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-3"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-2"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQuerySuccessResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PayoutFailedAfter202InSendPayout-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-4"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "properties": {
              "status": {
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus-1"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ],
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              },
              "errorResponses": {
                "items": {
                  "$ref": "#/components/schemas/ErrorResponseInNotificationForFailedRequest-1"
                },
                "exampleSetFlag": false,
                "types": [
                  "array"
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutFailedAfter202InSendPayout-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponseInNotificationForFailedRequest"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "AccountQuerySuccessResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-2"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "AccountQuerySuccessResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "payoutSpeed": {
                "description": "The payout processing speed send in the request. Currently supported value is \"STANDARD\". This field will be enhanced in future to include additional speed options\n\nConditional (Mandatory for an approved transaction and send in the request) \n\nISO20022 field name: Instruction Priority\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutSpeed"
                  }
                ]
              },
              "fundingModel": {
                "$ref": "#/components/schemas/FundingModel"
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-1"
                  }
                ]
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-1"
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "walletAdditionalDetails": {
                "$ref": "#/components/schemas/WalletAdditionalDetails"
              },
              "localSchemeTransactionId": {
                "$ref": "#/components/schemas/LocalSchemeTransactionId"
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "ExpectedPostingDate-5": {
        "maxLength": 10,
        "minLength": 10,
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds.\n\nISO20022 field name: Interbank Settlement Date\n",
        "format": "date",
        "example": "1980-02-01",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "Last4ofPAN": {
        "maxLength": 4,
        "minLength": 4,
        "type": "string",
        "description": "Last 4 digits of the Primary account number. It is returned when network token is provided as a payment instrument.",
        "example": "4321"
      },
      "ExpectedPostingDate-6": {
        "maxLength": 10,
        "minLength": 10,
        "type": "string",
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds.\n\nISO20022 field name: Interbank Settlement Date\n",
        "format": "date"
      },
      "PayoutFailedAfter202InSendPayout-4": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponseInNotificationForFailedRequest"
                }
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "AFTSenderDetail": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/AFTSenderCard"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTSenderDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-1"
          },
          "PaymentCredentialReference": {
            "$ref": "#/components/schemas/AftSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Account Funding Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\nAn object MUST contain exactly one of either 'card' or 'paymentCredentialReference'.\n"
      },
      "PayoutFailedAfter202InSendPayout-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-5"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "properties": {
              "status": {
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus-1"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ],
                "exampleSetFlag": true,
                "types": [
                  "string"
                ]
              },
              "errorResponses": {
                "items": {
                  "$ref": "#/components/schemas/ErrorResponseInNotificationForFailedRequest-1"
                },
                "exampleSetFlag": false,
                "types": [
                  "array"
                ]
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "OCTRequestData-4": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-1"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-4"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTRequestData-5": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-2"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-2"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-2"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-5"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTRequestData-6": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-1"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-1"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-6"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTRequestData-7": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-2"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-2"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-2"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-7"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTRequestData-8": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-3"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-2"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-3"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-8"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "SenderCardPosData-3": {
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData-3"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData-3"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData-1"
          }
        }
      },
      "SenderCardPosData-2": {
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData-2"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData-2"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          }
        }
      },
      "OCTRequestData-9": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-4"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-4"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-4"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-9"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "SenderCardPosData-1": {
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData-1"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData-1"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          }
        }
      },
      "RecipientName-1": {
        "maxLength": 30,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nFull name of recipient. ISO20022 field name: Creditor Name. Format Last Name + space + First Name + space + Middle Initial or Middle Name (optional) Alphabetic characters only (A–Z) No special characters or question marks<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Required when recipientDetail.firstName and recipientDetail.lastName are not provided</li>\n  <li>Must not contain only numeric characters</li>\n  <li>Must not contain special symbols</li>\n  <li>Use only valid and legal recipient name</li>\n  <li>Trim leading and trailing spaces</li>\n</ul>",
        "example": "Doe John A"
      },
      "Fees-2": {
        "type": "object",
        "properties": {
          "surcharge": {
            "$ref": "#/components/schemas/Surcharge"
          },
          "foreignExchangeFee": {
            "$ref": "#/components/schemas/ForeignExchangeFee"
          },
          "nationalReimbursementFee": {
            "$ref": "#/components/schemas/NationalReimbursementFee"
          }
        }
      },
      "WalletQueryPendingOnlyCancelledResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "Fees-3": {
        "type": "object",
        "properties": {
          "surcharge": {
            "$ref": "#/components/schemas/Surcharge-1"
          },
          "nationalReimbursementFee": {
            "$ref": "#/components/schemas/NationalReimbursementFee-1"
          }
        }
      },
      "ColombiaNationalServiceData": {
        "required": [
          "country"
        ],
        "type": "object",
        "properties": {
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO 3166-1 alpha-3 country code for national service data",
            "example": "MEX"
          },
          "addValueTaxAmount": {
            "$ref": "#/components/schemas/TaxAmount"
          },
          "addValueTaxReturn": {
            "type": "number",
            "format": "double"
          },
          "taxAmountConsumption": {
            "type": "number",
            "description": "a",
            "format": "double"
          },
          "nationalNetMiscAmount": {
            "type": "number",
            "format": "double"
          },
          "emvTransactionIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "costTransactionIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "nationalChargebackReason": {
            "type": "integer"
          },
          "nationalReimbursementFee": {
            "type": "number",
            "description": "a",
            "format": "double"
          },
          "nationalNetMiscAmountType": {
            "maxLength": 1,
            "type": "string",
            "description": "Optional string with a length of 1 character"
          },
          "nationalNetReimbursementFeeBaseAmount": {
            "$ref": "#/components/schemas/BaseAmount"
          }
        }
      },
      "Fees-1": {
        "type": "object",
        "properties": {
          "surcharge": {
            "$ref": "#/components/schemas/Surcharge"
          },
          "nationalReimbursementFee": {
            "$ref": "#/components/schemas/NationalReimbursementFee"
          }
        }
      },
      "Address": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "City of sender's address"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Country of sender's address"
          },
          "stateCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "State code of sender's address"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Postal code of sender's address"
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "First line of the recipient's address"
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Second line of sender's address"
          }
        }
      },
      "ExposureInfoFlexibleSettlementNotification-1": {
        "required": [
          "accountId",
          "eventType",
          "exposureInfo",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "CLIENT_EXPOSURE"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "exposureInfo": {
            "items": {
              "$ref": "#/components/schemas/ExposureInfoDetails-1"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "CardQueryTransactionResponse-1": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-1"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardAcceptorAdditionalContactDetails-1": {
        "maxLength": 256,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field contains additional information for contacting the acceptor, such as an additional phone number or a contact name. This field is required for all MasterCard transactions.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>This field is required for all MasterCard transactions.</li>\n</ul>",
        "example": "+0987654321"
      },
      "CardQueryTransactionResponse-3": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-3"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardQueryTransactionResponse-2": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-2"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardQueryTransactionResponse-5": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-5"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardQueryTransactionResponse-4": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-4"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardQueryTransactionResponse-7": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-7"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardQueryTransactionResponse-6": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-6"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardQueryTransactionResponse-9": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-9"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardQueryTransactionResponse-8": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-8"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "DigitalAssetCurrencyCode": {
        "type": "string",
        "description": "The cryptocurrency or fiat currency code",
        "example": "USDC",
        "enum": [
          "USDC"
        ]
      },
      "PaymentFacilitatorAddress-2": {
        "type": "object",
        "properties": {
          "city": {
            "$ref": "#/components/schemas/PaymentFacilitatorCity-1"
          },
          "state": {
            "$ref": "#/components/schemas/PaymentFacilitatorState-1"
          },
          "country": {
            "$ref": "#/components/schemas/PaymentFacilitatorCountry-2"
          },
          "postalCode": {
            "$ref": "#/components/schemas/PaymentFacilitatorPostalCode-1"
          },
          "addressLine": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddressLine"
          }
        }
      },
      "ReturnReasonDetails": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReturnReasonCode"
              }
            ]
          },
          "description": {
            "$ref": "#/components/schemas/ReturnReasonCodeDescription"
          }
        }
      },
      "PaymentFacilitatorAddress-1": {
        "type": "object",
        "properties": {
          "city": {
            "$ref": "#/components/schemas/PaymentFacilitatorCity"
          },
          "state": {
            "$ref": "#/components/schemas/PaymentFacilitatorState"
          },
          "country": {
            "$ref": "#/components/schemas/PaymentFacilitatorCountry-1"
          },
          "postalCode": {
            "$ref": "#/components/schemas/PaymentFacilitatorPostalCode"
          },
          "addressLine": {
            "$ref": "#/components/schemas/PaymentFacilitatorAddressLine"
          }
        }
      },
      "AccountQueryPendingCancelledResponse-1": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "AccountQueryPendingCancelledResponse-2": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-3"
      },
      "AccountBalanceWithTimestamp": {
        "required": [
          "accountId",
          "balance"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "balanceTimestamp": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "lastTransactionTimestamp": {
            "description": "The timestamp of the last money movement on the client's account. \n\nThis is a valid ISO 8601 timestamp, such as YYYY-MM-DDThh:mm:ss.sss±hh:mm.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "AccountQueryPendingCancelledResponse-5": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "AccountQueryPendingCancelledResponse-6": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "ReturnReasonCodeDetailsType-2": {
        "description": "Indicates the PSP return type when the payout is returned. Refer to PSP Return Type\n\nISO20022 field name: Payment Return - PSP Return Type\n",
        "enum": [
          "REJECTED",
          "RETURNED"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "AccountQueryPendingCancelledResponse-3": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "AccountQueryPendingCancelledResponse-4": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "AccountQueryPendingCancelledResponse-9": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "RecipientAccountPayoutAddress-11": {
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City-1"
              }
            ],
            "exampleSetFlag": false
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province-1"
              }
            ],
            "exampleSetFlag": false
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode-1"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1-1"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutFailedAfter202InSendPayout": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- VALIDATION_FAILED: Payout request failed validation and will not be proccessed further (only receive in case of 202 response)\nISO20022 field name: Transaction Information And Status - Transaction Status\n- ERROR: Payout is in error status after 24 hours of retry in 202\n",
                "example": "VALIDATION_FAILED",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorResponses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponseInNotificationForFailedRequest"
                }
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              }
            }
          }
        }
      },
      "AccountQueryPendingCancelledResponse-7": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "IdentityFieldInput-1": {
        "title": "IdentityFieldInput",
        "description": "Supported input types for a recipient identity UI.",
        "enum": [
          "text",
          "date",
          "number",
          "list"
        ],
        "x-enum-elements": [
          {
            "name": "text",
            "description": "Text UI field."
          },
          {
            "name": "date",
            "description": "Date UI field."
          },
          {
            "name": "number",
            "description": "Number UI field."
          },
          {
            "name": "list",
            "description": "List UI field."
          }
        ],
        "extensions": {
          "x-enum-elements": [
            {
              "name": "text",
              "description": "Text UI field."
            },
            {
              "name": "date",
              "description": "Date UI field."
            },
            {
              "name": "number",
              "description": "Number UI field."
            },
            {
              "name": "list",
              "description": "List UI field."
            }
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "AccountQueryPendingCancelledResponse-8": {
        "$ref": "#/components/schemas/QueryPendingCancelledResponse-2"
      },
      "DigitalAssetCompanyRecipientIdentificationListWallet": {
        "maximum": 1,
        "minimum": 1,
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "required": [
            "idNumber",
            "idType"
          ],
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values :\n* L-Legal Entity Identification or Registration Number \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "RecipientAccountPayoutAddress-15": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "RecipientAccountPayoutAddress-14": {
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City-1"
              }
            ],
            "exampleSetFlag": false
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province-1"
              }
            ],
            "exampleSetFlag": false
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1-1"
              }
            ],
            "exampleSetFlag": false
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-4"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RecipientAccountPayoutAddress-13": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2"
              }
            ]
          }
        }
      },
      "RecipientAccountPayoutAddress-12": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2"
              }
            ]
          }
        }
      },
      "AccountRange": {
        "maxLength": 9,
        "minLength": 9,
        "type": "string",
        "description": "Contains the first 9 digits of the cardholder PAN..\n\nNote: Acquirers must not forward this value to their merchants after receiving it in the response message from Visa.\n"
      },
      "TaxID": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Tax ID of the card acceptor",
        "example": "123456789"
      },
      "AddressLine2-3": {
        "maxLength": 50,
        "minLength": 1,
        "description": "This field contains individual recipient's 2nd line of address.",
        "example": "#999",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AddressLine2-4": {
        "maxLength": 50,
        "minLength": 1,
        "description": "This field contains individual recipient's 2nd line of address.",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "LocalTransactionDateTime-1": {
        "type": "string",
        "description": "Captures the local date and time of the transaction in the merchant's time zone for accurate regional reporting. Format YYYY-MM-DDTHH:MM:SS (ISO 8601 standard).<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must follow ISO 8601 format and represent a valid date-time value.</li>\n</ul>",
        "format": "date-time"
      },
      "AddressLine2-1": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "This field contains individual recipient's 2nd line of address.",
        "example": "#999"
      },
      "TransactionReferences": {
        "type": "array",
        "description": "This section returns client-driven or Visa-driven fields that are not required to be input by end-user (sender) into a UI, but should be submitted as part of Send Payout.\n",
        "items": {
          "$ref": "#/components/schemas/PayoutFieldDefinition"
        }
      },
      "CancelAccountandWalletPayoutResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n- PENDING_CANCELLATION: Cancel payout request is pending before cancellation\n- CANCELLED: A transaction has been successfully cancelled in PAYMENT_RECEIVED or PENDING status\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutCancelStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout and Reversals, Chargeback, Response, Advice for to Card. \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-2"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "cancel Account or Wallet payout response"
      },
      "AddressLine2-2": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "This field contains individual recipient's 2nd line of address."
      },
      "ReturnReasonCode-2": {
        "maxLength": 5,
        "minLength": 5,
        "type": "string",
        "description": "If the Transaction Status is RETURNED or REJECTED then Return reason code will be populated\n\nISO20022 field name: Payment Return - Reason Code  \n\nFor a complete list of reject/return codes and descriptions please visit <a href='/capabilities/visa-direct-account-and-wallet/docs-error-codes'>Visa Direct Account and Wallet - Error Codes</a> \n",
        "example": "RE303"
      },
      "ReturnReasonCode-3": {
        "maxLength": 5,
        "minLength": 5,
        "description": "If the Transaction Status is RETURNED or REJECTED then Return reason code will be populated\n\nISO20022 field name: Payment Return - Reason Code  \n\nFor a complete list of reject/return codes and descriptions please visit <a href='/capabilities/visa-direct-account-and-wallet/docs-error-codes'>Visa Direct Account and Wallet - Error Codes</a>\n",
        "example": "RE303",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "ReturnReasonCode-1": {
        "maxLength": 5,
        "minLength": 5,
        "type": "string",
        "description": "If the Transaction Status is RETURNED or REJECTED then Return reason code will be populated\n\nISO20022 field name: Payment Return - Reason Code  \n\nCodes and descriptions please refer to Visa Payment Guide\n",
        "example": "RE101"
      },
      "AlphaCountryCode-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "ISO-3166 (Alpha-3) country code.",
        "example": "USA"
      },
      "CardPayoutResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionResponse"
              }
            ]
          }
        },
        "description": "The 'transactionDetail' contains card payout response.\n"
      },
      "AlphaCountryCode-3": {
        "maxLength": 3,
        "minLength": 3,
        "description": "3-character ISO-3166 (Alpha-3) country code.",
        "example": "USA",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AlphaCountryCode-2": {
        "pattern": "^[A-Z]{3}$",
        "type": "string",
        "description": "AlphaCountryCode - 3-character ISO country code",
        "example": "USA"
      },
      "EssentialNetworkResponses-8": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "SenderIndividual-6": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender, conditionally required when firstName and lastName are not provided.",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n\nISO20022 field name: Debtor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Birth Date \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          }
        }
      },
      "EssentialNetworkResponses-7": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "SenderIndividual-5": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names <br>Sender first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "SenderIndividual-4": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender, conditionally required when firstName and lastName are not provided.",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n\nISO20022 field name: Debtor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name: Ultimate Debtor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Birth Date \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Ultimate Debtor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "PullCard-1": {
        "required": [
          "accountNumber"
        ],
        "type": "object",
        "properties": {
          "cavv": {
            "maxLength": 40,
            "minLength": 40,
            "type": "string",
            "description": "The Cardholder Authentication Verification Value (CAVV) is a value generated by an Access Control Server (ACS) and signed by the Issuer using account and password information of cardholders registered for the Verified by Visa (also known as Visa Secure) program. This field should be in hex-encoded format."
          },
          "tavv": {
            "maxLength": 40,
            "minLength": 40,
            "type": "string",
            "description": "The Token Authentication Verification Value (TAVV) is a value generated using tokenized PAN by Visa Token Service (VTS) and signed by the Issuer. This field should be in hex-encoded format."
          },
          "vauFlag": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "If present, a valid value is required. Spaces or special characters are not allowed. Possible values are : Y (will cause VAU to be performed)\n\nISO20022 field name: N/A\n"
          },
          "accountType": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.\n\n00-Not applicable\n\n10-Saving account\n\n20-Checking account\n\n30-Credit card account\n\n40-Universal account\n\nDefault is set to \"00\" if not provided.\n",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "pattern": "^\\d*$",
            "type": "string",
            "description": "Recipient primary account number, or token account number\n\nISO20022 field name: N/A\n"
          },
          "cardCvv2Value": {
            "maxLength": 4,
            "minLength": 3,
            "type": "string",
            "description": "The cardCvv2Value value provided by the account holder for the senderPrimaryAccountNumber in the request."
          },
          "expirationDate": {
            "maxLength": 7,
            "minLength": 7,
            "pattern": "YYYY-MM",
            "type": "string",
            "description": "Conditional\nThis field contains the expiration date for the recipient's primary account number or token in recipientPrimaryAccountNumber.\nNote: Visa requires expiration date to be present in all OCTs destined to U.S. issuers\nFormat: YYYY-MM\nExample: 2021-10\n\nISO20022 field name: N/A\n",
            "example": "2022-01"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which Visa forwards in requests and advices to issuers that have successfully tested to receive them. The subfield is dropped if issuers have not successfully completed testing or choose not to receive it.\nIf not provided, Visa will default its value to 7 for US and 5 for rest of the world, when posConditionCode is 59\n"
          }
        }
      },
      "SenderIndividual-3": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "EssentialNetworkResponses-9": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "FeePrograms": {
        "type": "object",
        "properties": {
          "surcharge": {
            "type": "number",
            "format": "double"
          },
          "nationalReimbursementFee": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "SenderIndividual-2": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender, conditionally required when firstName and lastName are not provided.",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n\nISO20022 field name: Debtor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Birth Date \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          }
        }
      },
      "EssentialNetworkResponses-4": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "SenderIndividual-1": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Ultimate Debtor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "middleName": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MiddleName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "EssentialNetworkResponses-3": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "EssentialNetworkResponses-6": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "EssentialNetworkResponses-5": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "EssentialNetworkResponses-2": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "EssentialNetworkResponses-1": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "actionCode",
          "cardAcceptorId",
          "responseSource",
          "retrievalReferenceNumber",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "<b> Only applicable for pull reversal for Cards</b>Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          }
        }
      },
      "CreateQuoteResponse": {
        "required": [
          "buyAmount",
          "buyCurrency",
          "exchangeRate",
          "quoteExpiryDateTime",
          "quoteId",
          "quoteStatus",
          "sellAmount",
          "sellCurrency"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "description": "This field contains the unique number representing the FX Quote.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/QuoteId-1"
              }
            ]
          },
          "buyAmount": {
            "description": "The transaction amount in buy currency.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "sellAmount": {
            "description": "The transaction amount in sell currency.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "buyCurrency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "quoteStatus": {
            "type": "string",
            "description": "A quote in PENDING state can be locked-in and executed before the given quoteExpiryDateTime value\n"
          },
          "exchangeRate": {
            "description": "This represents exchange rate between provided currencies.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ConversionRate"
              }
            ]
          },
          "sellCurrency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "quoteExpiryDateTime": {
            "description": "This timestamp represents the datetime value in UTC for which the quoteId is valid. YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00. For example: 2024-05-24T12:12:12.000Z, or 2024-05-24T12:12:12.000+00:00\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "RiskAssessmentResult": {
        "type": "object",
        "properties": {
          "exemptionReasonCode": {
            "type": "array",
            "description": "One or more instances of reason codes that explain why an exemption was not honored.\n\nValid Values :\n8A01 = Merchant not participating in Visa Delegated Authentication Program\n8A02 = Issuer not participating in Visa Delegated Authentication Program\n8A04 = Indeterminate or invalid issuer response\n8A06 = Did not meet exemption criteria (Visa determined)\n8A07 = VMID invalid for service\n8A08 = CAVV invalid value\n8A76 = Did not meet delegation criteria (Issuer supplied)\n8473 = Cardholder has not trusted the merchant (issuer supplied)\n8474 = Did not meet the exemption criteria (issuer supplied)\n8976 = Did not meet exemption criteria (issuer supplied)\n\nThis field is present in API response only if any of the SCA exemptions were claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.\n\nThis field maps to ISO8583 Field 34, Dataset ID 4A- Tag 8C.\n",
            "items": {
              "$ref": "#/components/schemas/ExemptionReasonCode-1"
            }
          },
          "scpExemptionIndicator": {
            "type": "string",
            "description": "Secure Corporate Payment (SCP) Indicator.\n\nValid Values :\nHONORED - Secure corporate payment exemption validated/honored\nNOT_HONORED-Secure corporate payment exemption failed validation/not honored\n\nThis field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.\n\nThis field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 88.\n",
            "enum": [
              "HONORED",
              "NOT_HONORED"
            ]
          },
          "traExemptionIndicator": {
            "type": "string",
            "description": "Transaction Risk Analysis (TRA) Exemption Indicator.\n\nValid Values :\nHONORED - Transaction risk analysis exemption validated/honored\nNOT_HONORED - Transaction risk analysis exemption failed validation/not honored\n\nThis field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.\n\nThis field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 89.\n",
            "enum": [
              "HONORED",
              "NOT_HONORED"
            ]
          },
          "lowValueExemptionIndicator": {
            "type": "string",
            "description": "This field is present in API response only if the following conditions are met.\n\n- optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.\n\n- Low Value exemption was claimed in the acquirer request (OR) Issuer chooses to approve the transaction as the amount was below the issuer set low value and velocity counts limits\n\nValid Values :\nHONORED - Low value exemption validated/honored\nNOT_HONORED - Low value exemption failed validation/not honored\n\nThis field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.\n\nThis field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 87.\n",
            "enum": [
              "HONORED",
              "NOT_HONORED"
            ]
          },
          "delegatedAuthenticationIndicator": {
            "type": "string",
            "description": "Delegated Authentication Indicator.\n\nValid Values :\nHONORED - Delegated authentication request validated/honored\nNOT_HONORED - Delegated authentication request failed validation/not honored\n\nThis field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.\n\nThis field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 8A.\n",
            "enum": [
              "HONORED",
              "NOT_HONORED"
            ]
          },
          "trustedMerchantExemptionIndicator": {
            "type": "string",
            "description": "Trusted Merchant Exemption Indicator.\n\nValid Values :\nHONORED - Trusted merchant exemption validated/honored\nNOT_HONORED - Trusted merchant exemption failed validation/not honored\n\nThis field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.\n\nThis field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 84.\n",
            "enum": [
              "HONORED",
              "NOT_HONORED"
            ]
          }
        }
      },
      "SenderIndividual-9": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "SenderIndividual-8": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender, conditionally required when firstName and lastName are not provided.",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/Name-1"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n\nISO20022 field name: Debtor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor Last Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name, conditionally required when name is not provided\n\nISO20022 field name: Ultimate Debtor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name: Ultimate Debtor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Ultimate Debtor Birth Date \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Ultimate Debtor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "SenderIndividual-7": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of sender is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "lastName": {
            "description": "Sender last name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Sender first name<br>Sender first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Ultimate Debtor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "middleName": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MiddleName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Sender city of birth\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor City of Birth\" <br>For 3rd party payments: \"Debtor City of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Sender date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Birth Date\" <br>For 3rd party payments: \"Debtor Birth Date\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Sender country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Country of Birth\" <br>For 3rd party payments: \"Debtor Country of Birth\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "RecipientIsIndividual-2": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-5"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "RecipientIsIndividual-1": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-1"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "RecipientIsIndividual-4": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-7"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "RecipientIsIndividual-3": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-6"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "RecipientIsIndividual-6": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-9"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "RecipientIsIndividual-5": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-8"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "RecipientIsIndividual-8": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName-1"
              }
            ],
            "exampleSetFlag": true
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-11"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth-1"
              }
            ],
            "exampleSetFlag": false
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-6"
              }
            ],
            "exampleSetFlag": false
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount-1"
          }
        },
        "exampleSetFlag": false
      },
      "RecipientIsIndividual-7": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-10"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-3"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount"
          }
        }
      },
      "RecipientIsIndividual-9": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName-1"
              }
            ],
            "exampleSetFlag": true
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-14"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth-1"
              }
            ],
            "exampleSetFlag": false
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-6"
              }
            ],
            "exampleSetFlag": false
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount-2"
          }
        },
        "exampleSetFlag": false
      },
      "NotificationsErrorResponseWithKey-2": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          }
        }
      },
      "NotificationsErrorResponseWithKey-1": {
        "type": "object",
        "properties": {
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/NotificationsErrorResponse"
              }
            ]
          }
        }
      },
      "AccountSenderTransactorDetailWithID-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-5"
          },
          {
            "$ref": "#/components/schemas/AccountSenderIsCompany-3"
          },
          {
            "$ref": "#/components/schemas/AccountSenderTypeIsUnspecified-2"
          }
        ]
      },
      "AccountSenderTransactorDetailWithID-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-3"
          },
          {
            "$ref": "#/components/schemas/AccountSenderIsCompany-1"
          },
          {
            "$ref": "#/components/schemas/AccountSenderTypeIsUnspecified-1"
          }
        ],
        "exampleSetFlag": false
      },
      "AccountSenderTransactorDetailWithID-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-4"
          },
          {
            "$ref": "#/components/schemas/AccountSenderIsCompany-2"
          }
        ],
        "exampleSetFlag": false
      },
      "AccountSenderTransactorDetailWithID-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-1"
          },
          {
            "$ref": "#/components/schemas/AccountSenderIsCompany"
          }
        ]
      },
      "AccountSenderTransactorDetailWithID-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual-2"
          },
          {
            "$ref": "#/components/schemas/AccountSenderIsCompany"
          }
        ]
      },
      "AccountSenderTransactorDetailWithID-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SenderIsIndividual"
          },
          {
            "$ref": "#/components/schemas/AccountSenderIsCompany"
          },
          {
            "$ref": "#/components/schemas/AccountSenderTypeIsUnspecified"
          }
        ]
      },
      "Nationality": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "3-digit numeric or 3-character alpha ISO country code of the nationality"
      },
      "ScaEnvironmentOutageIndicator": {
        "type": "string",
        "description": "SCA environment outage indicator",
        "enum": [
          "true",
          "false"
        ]
      },
      "ReplacementCardAccountNumber": {
        "maxLength": 28,
        "minLength": 1,
        "type": "string",
        "description": "Account number of the replacement card",
        "example": "4123450000000000"
      },
      "RecipientContactName-1": {
        "maxLength": 140,
        "minLength": 3,
        "type": "string",
        "description": "Contact Name of the Recipient Company (Creditor).  \n"
      },
      "CardAcceptorContactInformation": {
        "type": "object",
        "properties": {
          "phoneNumber": {
            "$ref": "#/components/schemas/CardAcceptorPhoneNumber"
          },
          "additionalContactDetails": {
            "$ref": "#/components/schemas/CardAcceptorAdditionalContactDetails"
          },
          "customerServicePhoneNumber": {
            "$ref": "#/components/schemas/CardAcceptorCustomerServicePhoneNumber"
          }
        }
      },
      "NetworkResponseSettlementInfo-1": {
        "type": "object",
        "properties": {
          "givUpdatedFlag": {
            "$ref": "#/components/schemas/GivUpdatedFlag-2"
          },
          "settlementServiceFlag": {
            "$ref": "#/components/schemas/SettlementServiceFlag-2"
          },
          "givPreviouslyUpdatedFlag": {
            "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-2"
          },
          "settlementResponsibilityFlag": {
            "$ref": "#/components/schemas/SettlementResponsibilityFlag-2"
          }
        }
      },
      "DigitalAssetValidatePayoutResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetValidPayoutResponse"
          },
          {
            "$ref": "#/components/schemas/InvalidPayoutResponse"
          }
        ]
      },
      "CountrySpecificSchemas": {
        "type": "object",
        "description": "This section lists fields with country-specific definition (e.g., datatype, length, pattern or format that vary by country).\nIt contains valid JSON Schemas."
      },
      "WalletPayoutRequest-28": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-6"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-27"
          }
        ]
      },
      "WalletPayoutRequest-27": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-26"
          }
        ]
      },
      "DueDateTime": {
        "type": "string",
        "description": "ISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00",
        "format": "date-time",
        "example": "2020-05-05T12:12:12Z"
      },
      "AccountWalletRecipientPayoutAddress-1": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-1"
              }
            ]
          }
        }
      },
      "WalletPayoutRequest-26": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/WalletTransactionDetail-4"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-25"
          }
        ],
        "exampleSetFlag": false
      },
      "WalletPayoutRequest-25": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-24"
          }
        ]
      },
      "Conditions": {
        "type": "array",
        "items": {
          "oneOf": [
            {
              "$ref": "#/components/schemas/AnyCondition"
            },
            {
              "$ref": "#/components/schemas/AllCondition"
            },
            {
              "$ref": "#/components/schemas/NotCondition"
            }
          ]
        }
      },
      "WalletPayoutRequest-29": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-7"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-28"
          }
        ],
        "exampleSetFlag": false
      },
      "OCTOriginatorDetail-2": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor-2"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "ClientVerificationReference": {
        "maxLength": 35,
        "minLength": 1,
        "pattern": "^[a-zA-Z0-9- /?:().,'+]*$",
        "type": "string",
        "description": "A client submitted identifier. This field and same value will be returned in the response.",
        "example": "1234567890"
      },
      "ValidatePayoutAccountRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-4"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-4"
          }
        ]
      },
      "OCTOriginatorDetail-3": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor-3"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "WalletPayoutRequest-30": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/WalletTransactionDetail-8"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-29"
          }
        ]
      },
      "ValidatePayoutAccountRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-3"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-5"
          }
        ]
      },
      "Surcharge": {
        "type": "number",
        "description": "Surcharge as assessed by the Originating Entity. Values must be included in the transactionAmount and should be in the same currency and format.",
        "format": "double",
        "example": 5
      },
      "OCTOriginatorDetail-1": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor-1"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "ValidatePayoutAccountRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-6"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-5"
          }
        ]
      },
      "OCTOriginatorDetail-6": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor-6"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "WalletRecipientTransactorDetailWithID-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-10"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-10"
          }
        ]
      },
      "OCTOriginatorDetail-7": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor-7"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "ValidatePayoutAccountRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-1"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          },
          "clientVerificationReference": {
            "description": "A client submitted identifier. This field and same value will be returned in the response. \nConditional: Required if accountVerificationRequired = True\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-1"
          }
        ]
      },
      "OCTOriginatorDetail-4": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-2"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor-4"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTOriginatorDetailAdditionalData"
            }
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode-1"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "ValidatePayoutAccountRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-4"
          }
        ]
      },
      "OCTOriginatorDetail-5": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin-3"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor-4"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTOriginatorDetailAdditionalData"
            }
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode-1"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "OCTOriginatorDetail-8": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor-8"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "OCTOriginatorDetail-9": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor-9"
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "ValidatePayoutAccountRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-7"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-7"
          }
        ]
      },
      "ValidatePayoutAccountRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-8"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-8"
          }
        ]
      },
      "RouteDefinitionRecallPerCountryAndCurrency-1": {
        "required": [
          "metadataVersion",
          "metadataVersionDate",
          "notificationId",
          "notificationType",
          "payoutMethod",
          "recipientCountryCode",
          "recipientCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Payout method code. Valid values are B- Bank , W- Wallet (This ENUM is not currently supported. It is for future use.)\n",
            "enum": [
              "B",
              "w"
            ]
          },
          "notificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique identifier for the notification. In case of a recall (i.e., when the notificationType is \"RECALL\"), this field will contain the notificationId of a previously sent notification that is being recalled.\n",
            "example": "58e0a7d7-eebc-11d8-9669-0800200c9a66"
          },
          "metadataVersion": {
            "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
            "type": "string",
            "description": "This is the version of the route definition recalled by VISA. \nIt is in the format <major-version>.<minor-version>.<patch>.\n\n* patch updates are documentation updates only and should not influence the processing of a payout transaction. Example: changes to the description of Purpose of Payment code.\n\n* minor-version updates indicate backward compatible changes in the route validation rules on a payout transaction. Example: addition of a new Purpose of Payment code.\n\n* major-version updates indicate backward incompatible changes in the route validation rules on a payout transaction. Such changes are usually regulatory in nature or due to partner migration on Visa's backend. Example: Purpose of Payment code changing from a \"conditional\"/ \"recommended\" to a \"required\" field.\n",
            "example": "1.0.0"
          },
          "notificationType": {
            "type": "string",
            "description": "Notification Type. Valid value- RECALL\n",
            "enum": [
              "RECALL"
            ]
          },
          "metadataVersionDate": {
            "type": "string",
            "description": "This was the expected go-live date of the recalled metadata version.",
            "format": "date"
          },
          "recipientCountryCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-3166 (Alpha-3) country code\n",
            "example": "USA"
          },
          "recipientCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-4217 (Alpha-3) currency code\n",
            "example": "USD"
          },
          "recipientWalletOperator": {
            "type": "string",
            "description": "Wallet operator enumerated names. This field will be present only when the payoutMethod is W. recipientWalletOperator is for future use as payoutMethod=W is not currently supported.\n",
            "example": "BKASH"
          }
        }
      },
      "ValidatePayoutAccountRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateAccountTransactionDetail-9"
              }
            ]
          },
          "accountVerificationRequired": {
            "$ref": "#/components/schemas/accountVerificationRequired"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutAccountRequest-9"
          }
        ]
      },
      "AFTTransactionDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "cpsAuthorizationCharacteristicsIndicator<br><br><b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
              },
              "value": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "digitalSecureRemotePaymentTokenCryptogram<br><br>This field contains Mastercard digital payment/Cryptogram data associated with the token."
              },
              "value": {
                "maxLength": 28,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardUCAFCollectionIndicator<br><br>E-commerce indicator that Mastercard Universal Cardholder Authentication data is included in the message."
              },
              "value": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardUCAFField<br><br>This field contains Mastercard e-commerce Universal Cardholder Authentication data in encrypted form. It may also contain Mastercard telephone order data"
              },
              "value": {
                "maxLength": 32,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "memberComments<br><br>This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
              },
              "value": {
                "maxLength": 254,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "vauFlag<br><br>Possible values are : Y (replacement occurred). N (No replacements)"
              },
              "value": {
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "argentinaNationalServiceData<br><br>Settlement Service Data object for Argentina required if transaction indicates Argentina national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/ArgentinaNationalServiceData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "colombiaNationalServiceData<br><br>Settlement Service Data object for Colombia required if transaction indicates Colombia national settlement"
              },
              "value": {
                "$ref": "#/components/schemas/ColombiaNationalServiceData-1"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "mexicoNationalServiceData<br><br>Settlement Service Data object for Mexico required if transaction indicates Mexico national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/MexicoNationalServiceData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardWalletIdentifier<br><br>This field contains the Wallet Program Data  generated by the PayPass Online platform or MasterPass platform"
              },
              "value": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardAuthenticationData<br><br>The first character contains Mastercard 3DS Program Protocol for 3DS. Please refer to the Mastercard specification for a list of valid values.<br/>Next 36 characters contain the directory server transaction ID data"
              },
              "value": {
                "maxLength": 37,
                "minLength": 1,
                "type": "string"
              }
            }
          }
        ]
      },
      "OCTCardVerificationResults": {
        "type": "object",
        "properties": {
          "cvv2ResultCode": {
            "$ref": "#/components/schemas/Cvv2ResultCode"
          }
        }
      },
      "ErrorInfo": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Error code"
          },
          "details": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "field": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "Error message description"
          }
        }
      },
      "City": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "When present, this field contains individual recipient's city",
        "example": "Santa Fe"
      },
      "OCTAdditionalAcceptor": {
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "description": "Multiple ids can be provided for additional Acceptor. Duplicate instance of same idType is not allowed eg. One instance of Gateways and RampProvider can be present in the same request but multiple instances of same idType like Gateways is not allowed.",
            "items": {
              "$ref": "#/components/schemas/AdditionalAcceptorId"
            }
          },
          "foreignRetailerIndicator": {
            "type": "string",
            "description": "Identifies a foreign retailer under a marketplace and/or payment facilitator. <br>May also Identify a foreign Conversion Affiliate under a Ramp <br>This tag must contain either: <br><br>A – Conversion Affiliate is located in the same country as Ramp provider<br>B – Conversion Affiliate is located in a different country as Ramp provider"
          }
        }
      },
      "NetworkId": {
        "type": "number",
        "description": "Network identifieron which the transaction was prrocessed. Refer to <a href=\"https://developer.visa.com/request_response_codes#network_id_and_sharing_group_code\"> network codes</a>",
        "example": 2
      },
      "SettlementDate-1": {
        "type": "string",
        "description": "Date when settlement occurs",
        "format": "date"
      },
      "OCTRecipientDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "localNameData<br><br>This object is used to provide the recipient's local name data. This object is required for transactions where the recipient's local name data is required."
              },
              "value": {
                "$ref": "#/components/schemas/RecipientLocalNameData"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "contactInformationList<br><br>Contact Information list of recipient.<br /><br />Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/ContactInformationList"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "ancillaryRecipientDetails<br><br>Ancillary recipient details.<br><br>Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/AncillaryRecipientDetails"
              }
            }
          }
        ]
      },
      "AFTRResponseData-7": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-7"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "AFTRResponseData-9": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail-1"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-9"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "RecipientIdentification": {
        "required": [
          "idNumber",
          "idType"
        ],
        "type": "object",
        "properties": {
          "idType": {
            "type": "string",
            "description": "Type of identification document. Valid types include: CUID (Customer ID), NTID (National ID), PASN (Passport), DRLN (Driver License), TXIN (Tax ID), CPNY (Company ID), PRXY (Proxy ID)\n",
            "example": "PASN",
            "enum": [
              "CUID",
              "NTID",
              "PASN",
              "DRLN",
              "TXIN",
              "CPNY",
              "PRXY",
              "SSNB",
              "ARNB",
              "LAWE",
              "MILI",
              "TRVL",
              "EMAL",
              "PHON",
              "BTHD"
            ]
          },
          "idNumber": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Recipient identification number (issued by a government or similar authority). ISO20022 field name - \"Creditor Private Identification\" or \"Creditor Organisation Identification\".\n",
            "example": "A1234567"
          },
          "idOwnerType": {
            "type": "string",
            "description": "Type of identification owner - Individual or Company",
            "example": "I",
            "enum": [
              "I",
              "C"
            ]
          },
          "idIssueCountry": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Recipient identification issuing country. Format: 3-digit numeric or 3-character alpha ISO country code. ISO20022 field name - \"Creditor Private Identification Issuer Country\" or  \"Creditor Organisation Identification Issuer Country\".\n",
            "example": "USA"
          }
        },
        "description": "Recipient identification document details"
      },
      "ChipConditionCode": {
        "type": "number",
        "description": "Contains a code identifying chip conditions at the point of sale or point of service."
      },
      "CardAuthenticationResults": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "A Visa-defined code indicating Online Card Authentication Method results. Refer to cardAuthenticationResults Refer to <a href=\"A Visa-defined code indicating Online Card Authentication Method results. Refer to <a hef=\"https://developer.visa.com/request_response_codes#cardAuthenticationResults\">cardAuthenticationResults</a>",
        "example": "1"
      },
      "AFTRResponseData-3": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-3"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "AFTRResponseData-4": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-4"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "PrepaidBalanceData-2": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "number",
            "description": "Prepaid balance amount",
            "format": "double"
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code for the prepaid balance"
          }
        }
      },
      "AFTRResponseData-5": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-5"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "AFTRResponseData-6": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-6"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "PrepaidBalanceData-3": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "number",
            "description": "Specifies the remaining prepaid balance amount on the card after the transaction is processed. Format Example structure: XXXXXX.XX",
            "format": "double",
            "example": 150.75
          },
          "currencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Indicates the ISO 4217 currency code for the prepaid balance amount. Format Must follow ISO 4217 standard.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match a valid ISO 4217 currency code.</li>\n  <li>No spaces, numbers beyond the code, or special characters.</li>\n</ul>",
            "example": "USD"
          }
        }
      },
      "QueryPendingCancelledResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "PrepaidBalanceData-1": {
        "required": [
          "amount",
          "currencyCode"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Contains the prepaid load amount to the prepaid card, expressed in the currency specified in prepaidBalanceData currency code field. \n\nConditional (Mandatory only for Top Up Transactions)\n\nNote: The number of decimal places assumed for this field depends on the currency. Refer to SMS POS Visa & Visa Electron\nTechnical Specifications - Appendix E Country and Currency codes for P2C.\n\nExample: Currency exponent for USD is 2. If the transaction amount is $100.99, then this field should populate “10099”. If the transaction amount is $100.00 then this field should populate “10000”. Currency exponent for JPY is 0. If the transaction amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-digit ISO-4217 code in this field reflects the currency associated with the prepaid balanace data amount \nFormat: 3-digit ISO-4217 (numeric) currency code\n\nConditional (Mandatory only for Top Up Transactions)\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          }
        }
      },
      "AFTRResponseData-1": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-1"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "AFTRResponseData-2": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail-2"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "TransactionalStructuredRemittance-1": {
        "maxItems": 999,
        "type": "array",
        "items": {
          "required": [
            "amount",
            "amountCurrencyCode"
          ],
          "type": "object",
          "properties": {
            "amount": {
              "description": "This is the amount of money remitted for the referred document. Note that this field accepts signed amounts. A positive amount value indicates amounts flowing in the direction of the payout transaction, and due to the recipient . A negative amount value indicates the amount due back to the sender, i.e. a reduction in the total remitted amount. An amount value without the explicit mention of sign would be assumed positive.\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/SignedAmount"
                }
              ]
            },
            "taxAmount": {
              "example": 1.23,
              "allOf": [
                {
                  "$ref": "#/components/schemas/Amount"
                }
              ]
            },
            "taxCurrencyCode": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCurrencyCode"
                }
              ]
            },
            "creditorReference": {
              "required": [
                "code",
                "number"
              ],
              "type": "object",
              "properties": {
                "code": {
                  "maxLength": 4,
                  "minLength": 4,
                  "type": "string",
                  "description": "Refer to PACS.008 SRI Creditor Reference Type codes",
                  "example": "SCOR",
                  "enum": [
                    "RADM",
                    "RPIN",
                    "FXDR",
                    "DISP",
                    "PUOR",
                    "SCOR"
                  ]
                },
                "number": {
                  "maxLength": 35,
                  "minLength": 1,
                  "type": "string",
                  "example": "TLD1215"
                }
              }
            },
            "amountCurrencyCode": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCurrencyCode"
                }
              ]
            },
            "referredDocumentInformation": {
              "maxItems": 1,
              "type": "array",
              "items": {
                "required": [
                  "code",
                  "number"
                ],
                "type": "object",
                "properties": {
                  "code": {
                    "maxLength": 4,
                    "minLength": 4,
                    "type": "string",
                    "description": "Refer to PACS.008 SRI Referred Document Type codes. Only 'CINV' and 'CREN' are supported values.",
                    "example": "CINV",
                    "enum": [
                      "MSIN",
                      "CNFA",
                      "DNFA",
                      "CINV",
                      "CREN",
                      "DEBN",
                      "HIRI",
                      "SBIN",
                      "CMCN",
                      "SOAC",
                      "DISP",
                      "BOLD",
                      "VCHR",
                      "AROI",
                      "TSUT",
                      "PUOR"
                    ]
                  },
                  "number": {
                    "maxLength": 35,
                    "minLength": 1,
                    "type": "string",
                    "example": "24895544"
                  },
                  "relatedDate": {
                    "type": "string",
                    "format": "date"
                  }
                }
              }
            }
          }
        }
      },
      "TransactionalStructuredRemittance-2": {
        "maxItems": 999,
        "items": {
          "required": [
            "amount",
            "amountCurrencyCode"
          ],
          "properties": {
            "amount": {
              "description": "This is the amount of money remitted for the referred document. Note that this field accepts signed amounts. A positive amount value indicates amounts flowing in the direction of the payout transaction, and due to the recipient . A negative amount value indicates the amount due back to the sender, i.e. a reduction in the total remitted amount. An amount value without the explicit mention of sign would be assumed positive.\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/SignedAmount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "taxAmount": {
              "example": 1.23,
              "allOf": [
                {
                  "$ref": "#/components/schemas/Amount-1"
                }
              ],
              "exampleSetFlag": true
            },
            "taxCurrencyCode": {
              "$ref": "#/components/schemas/AlphaCurrencyCode-2"
            },
            "creditorReference": {
              "required": [
                "code",
                "number"
              ],
              "properties": {
                "code": {
                  "maxLength": 4,
                  "minLength": 4,
                  "description": "Refer to PACS.008 SRI Creditor Reference Type codes",
                  "example": "SCOR",
                  "enum": [
                    "RADM",
                    "RPIN",
                    "FXDR",
                    "DISP",
                    "PUOR",
                    "SCOR"
                  ],
                  "exampleSetFlag": true,
                  "types": [
                    "string"
                  ]
                },
                "number": {
                  "maxLength": 35,
                  "minLength": 1,
                  "example": "TLD1215",
                  "exampleSetFlag": true,
                  "types": [
                    "string"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            },
            "amountCurrencyCode": {
              "$ref": "#/components/schemas/AlphaCurrencyCode-2"
            },
            "referredDocumentInformation": {
              "maxItems": 1,
              "items": {
                "required": [
                  "code",
                  "number"
                ],
                "properties": {
                  "code": {
                    "maxLength": 4,
                    "minLength": 4,
                    "description": "Refer to PACS.008 SRI Referred Document Type codes. Only 'CINV' and 'CREN' are supported values.",
                    "example": "CINV",
                    "enum": [
                      "MSIN",
                      "CNFA",
                      "DNFA",
                      "CINV",
                      "CREN",
                      "DEBN",
                      "HIRI",
                      "SBIN",
                      "CMCN",
                      "SOAC",
                      "DISP",
                      "BOLD",
                      "VCHR",
                      "AROI",
                      "TSUT",
                      "PUOR"
                    ],
                    "exampleSetFlag": true,
                    "types": [
                      "string"
                    ]
                  },
                  "number": {
                    "maxLength": 35,
                    "minLength": 1,
                    "example": "24895544",
                    "exampleSetFlag": true,
                    "types": [
                      "string"
                    ]
                  },
                  "relatedDate": {
                    "format": "date",
                    "example": "2017-07-21",
                    "exampleSetFlag": true,
                    "types": [
                      "string"
                    ]
                  }
                },
                "exampleSetFlag": false,
                "types": [
                  "object"
                ]
              },
              "exampleSetFlag": false,
              "types": [
                "array"
              ]
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "TransactionalStructuredRemittance-3": {
        "maxItems": 999,
        "items": {
          "required": [
            "amount",
            "amountCurrencyCode"
          ],
          "properties": {
            "amount": {
              "description": "This is the amount of money remitted for the referred document. Note that this field accepts signed amounts. A positive amount value indicates amounts flowing in the direction of the payout transaction, and due to the recipient . A negative amount value indicates the amount due back to the sender, i.e. a reduction in the total remitted amount. An amount value without the explicit mention of sign would be assumed positive.\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/SignedAmount-1"
                }
              ],
              "exampleSetFlag": false
            },
            "taxAmount": {
              "example": 1.23,
              "allOf": [
                {
                  "$ref": "#/components/schemas/Amount-1"
                }
              ],
              "exampleSetFlag": true
            },
            "taxCurrencyCode": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                }
              ],
              "exampleSetFlag": false
            },
            "creditorReference": {
              "required": [
                "code",
                "number"
              ],
              "properties": {
                "code": {
                  "maxLength": 4,
                  "minLength": 4,
                  "description": "Refer to PACS.008 SRI Creditor Reference Type codes",
                  "example": "SCOR",
                  "enum": [
                    "RADM",
                    "RPIN",
                    "FXDR",
                    "DISP",
                    "PUOR",
                    "SCOR"
                  ],
                  "exampleSetFlag": true,
                  "types": [
                    "string"
                  ]
                },
                "number": {
                  "maxLength": 35,
                  "minLength": 1,
                  "example": "TLD1215",
                  "exampleSetFlag": true,
                  "types": [
                    "string"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            },
            "amountCurrencyCode": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                }
              ],
              "exampleSetFlag": false
            },
            "referredDocumentInformation": {
              "maxItems": 1,
              "items": {
                "required": [
                  "code",
                  "number"
                ],
                "properties": {
                  "code": {
                    "maxLength": 4,
                    "minLength": 4,
                    "description": "Refer to PACS.008 SRI Referred Document Type codes. Only 'CINV' and 'CREN' are supported values.",
                    "example": "CINV",
                    "enum": [
                      "MSIN",
                      "CNFA",
                      "DNFA",
                      "CINV",
                      "CREN",
                      "DEBN",
                      "HIRI",
                      "SBIN",
                      "CMCN",
                      "SOAC",
                      "DISP",
                      "BOLD",
                      "VCHR",
                      "AROI",
                      "TSUT",
                      "PUOR"
                    ],
                    "exampleSetFlag": true,
                    "types": [
                      "string"
                    ]
                  },
                  "number": {
                    "maxLength": 35,
                    "minLength": 1,
                    "example": "24895544",
                    "exampleSetFlag": true,
                    "types": [
                      "string"
                    ]
                  },
                  "relatedDate": {
                    "format": "date",
                    "example": "2017-07-21",
                    "exampleSetFlag": true,
                    "types": [
                      "string"
                    ]
                  }
                },
                "exampleSetFlag": false,
                "types": [
                  "object"
                ]
              },
              "exampleSetFlag": false,
              "types": [
                "array"
              ]
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "TransactionalStructuredRemittance-4": {
        "maxItems": 999,
        "type": "array",
        "items": {
          "required": [
            "amount",
            "amountCurrencyCode"
          ],
          "type": "object",
          "properties": {
            "amount": {
              "description": "This is the amount of money remitted for the referred document. Note that this field accepts signed amounts. A positive amount value indicates amounts flowing in the direction of the payout transaction, and due to the recipient . A negative amount value indicates the amount due back to the sender, i.e. a reduction in the total remitted amount. An amount value without the explicit mention of sign would be assumed positive.\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/SignedAmount"
                }
              ]
            },
            "taxAmount": {
              "example": 1.23,
              "allOf": [
                {
                  "$ref": "#/components/schemas/Amount"
                }
              ]
            },
            "taxCurrencyCode": {
              "$ref": "#/components/schemas/AlphaCurrencyCode"
            },
            "creditorReference": {
              "required": [
                "code",
                "number"
              ],
              "type": "object",
              "properties": {
                "code": {
                  "maxLength": 4,
                  "minLength": 4,
                  "type": "string",
                  "description": "Refer to PACS.008 SRI Creditor Reference Type codes",
                  "example": "SCOR",
                  "enum": [
                    "RADM",
                    "RPIN",
                    "FXDR",
                    "DISP",
                    "PUOR",
                    "SCOR"
                  ]
                },
                "number": {
                  "maxLength": 35,
                  "minLength": 1,
                  "type": "string",
                  "example": "TLD1215"
                }
              }
            },
            "amountCurrencyCode": {
              "$ref": "#/components/schemas/AlphaCurrencyCode"
            },
            "referredDocumentInformation": {
              "maxItems": 1,
              "type": "array",
              "items": {
                "required": [
                  "code",
                  "number"
                ],
                "type": "object",
                "properties": {
                  "code": {
                    "maxLength": 4,
                    "minLength": 4,
                    "type": "string",
                    "description": "Refer to PACS.008 SRI Referred Document Type codes. Only 'CINV' and 'CREN' are supported values.",
                    "example": "CINV",
                    "enum": [
                      "MSIN",
                      "CNFA",
                      "DNFA",
                      "CINV",
                      "CREN",
                      "DEBN",
                      "HIRI",
                      "SBIN",
                      "CMCN",
                      "SOAC",
                      "DISP",
                      "BOLD",
                      "VCHR",
                      "AROI",
                      "TSUT",
                      "PUOR"
                    ]
                  },
                  "number": {
                    "maxLength": 35,
                    "minLength": 1,
                    "type": "string",
                    "example": "24895544"
                  },
                  "relatedDate": {
                    "type": "string",
                    "format": "date"
                  }
                }
              }
            }
          }
        }
      },
      "SenderLastName-1": {
        "maxLength": 35,
        "minLength": 2,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nSender last name. Same requirement and rules as first name. ISO20022 field name: Debtor Last Name. Format<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Required when senderDetail.name is not provided</li>\n  <li>No numeric-only or special symbols</li>\n</ul>",
        "example": "Smith"
      },
      "AccountRecipientTransactorDetailWithID-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-9"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-9"
          }
        ],
        "exampleSetFlag": false
      },
      "AdjustmentResponseData-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "networkResponse",
              "status",
              "transactionDateTime",
              "transactionIdentifier"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the adjustment transaction",
                "example": "PAYMENT_DELIVERED",
                "enum": [
                  "PAYMENT_DELIVERED",
                  "PAYMENT_DECLINED",
                  "IN_PROGRESS"
                ]
              },
              "networkResponse": {
                "required": [
                  "actionCode"
                ],
                "type": "object",
                "properties": {
                  "actionCode": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Action code returned by the network",
                    "example": "00"
                  },
                  "settlementInfo": {
                    "required": [
                      "settlementResponsibilityFlag"
                    ],
                    "type": "object",
                    "properties": {
                      "givUpdatedFlag": {
                        "type": "string",
                        "description": "Flag indicating if GIV was updated",
                        "example": "N"
                      },
                      "settlementServiceFlag": {
                        "maxLength": 1,
                        "minLength": 1,
                        "type": "string",
                        "description": "Flag for settlement service",
                        "example": "Y"
                      },
                      "givPreviouslyUpdatedFlag": {
                        "type": "string",
                        "description": "Flag indicating if GIV was previously updated",
                        "example": "N"
                      },
                      "settlementResponsibilityFlag": {
                        "type": "string",
                        "description": "Flag indicating settlement responsibility",
                        "example": "Y"
                      }
                    },
                    "description": "Settlement information"
                  },
                  "customerReference": {
                    "type": "string",
                    "description": "Customer reference information",
                    "example": "CUSTOMER123"
                  },
                  "merchantReference": {
                    "maxLength": 35,
                    "type": "string",
                    "description": "Merchant reference information",
                    "example": "MERCHANT-REF-12345"
                  },
                  "originalActionCode": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Original action code from the transaction being adjusted",
                    "example": "00"
                  },
                  "cardResponseTokenData": {
                    "type": "object",
                    "properties": {
                      "additionalTokenRespInfo": {
                        "maxLength": 1,
                        "minLength": 1,
                        "type": "string",
                        "description": "Additional token response information",
                        "example": "A"
                      }
                    },
                    "description": "Token-related response data"
                  },
                  "masterCardMerchantPaymentGatewayId": {
                    "maxLength": 11,
                    "minLength": 1,
                    "type": "string",
                    "description": "MasterCard merchant payment gateway identifier",
                    "example": "MCPG123456"
                  },
                  "senderIdentificationNumberIndividual": {
                    "type": "string",
                    "description": "Individual identification number for the sender",
                    "example": "IND123456"
                  },
                  "recipientIdentificationNumberBusiness": {
                    "type": "string",
                    "description": "Business identification number for the recipient",
                    "example": "BIZ123456"
                  },
                  "cpsAuthorizationCharactersticIndicator": {
                    "maxLength": 1,
                    "minLength": 1,
                    "type": "string",
                    "description": "CPS authorization characteristic indicator",
                    "example": "Y"
                  }
                },
                "description": "Network response details"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier",
                "example": "ADJUST202505"
              },
              "initiatingPartyId": {
                "type": "integer",
                "description": "A unique identifier assigned by the initiating party for the API consumer",
                "format": "int64",
                "example": 987654321
              },
              "transactionDateTime": {
                "type": "string",
                "description": "Date and time when the transaction was processed",
                "format": "date-time",
                "example": "2025-05-20T14:30:45Z"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                },
                "description": "Service processing type information"
              },
              "transactionIdentifier": {
                "type": "integer",
                "description": "Unique identifier assigned by Visa for the transaction",
                "format": "int64",
                "example": 1234567890123456
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Identifier linking related transactions",
                "example": "TRX-LINK-123456"
              }
            },
            "description": "Transaction details for the adjustment response"
          }
        },
        "description": "Response data for card transaction adjustment"
      },
      "AccountRecipientTransactorDetailWithID-11": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-10"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientIsCompany-10"
          },
          {
            "$ref": "#/components/schemas/AccountRecipientTypeIsUnspecified-2"
          }
        ]
      },
      "AdjustmentResponseData-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "networkResponse",
              "status",
              "transactionDateTime",
              "transactionIdentifier"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the adjustment transaction",
                "example": "COMPLETED",
                "enum": [
                  "COMPLETED",
                  "REJECTED",
                  "PENDING",
                  "SCHEDULED",
                  "FAILED"
                ]
              },
              "networkResponse": {
                "required": [
                  "actionCode"
                ],
                "type": "object",
                "properties": {
                  "actionCode": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Action code returned by the network",
                    "example": "00"
                  },
                  "settlementInfo": {
                    "required": [
                      "settlementResponsibilityFlag"
                    ],
                    "type": "object",
                    "properties": {
                      "givUpdatedFlag": {
                        "type": "string",
                        "description": "Flag indicating if GIV was updated",
                        "example": "N"
                      },
                      "settlementServiceFlag": {
                        "maxLength": 1,
                        "minLength": 1,
                        "type": "string",
                        "description": "Flag for settlement service",
                        "example": "Y"
                      },
                      "givPreviouslyUpdatedFlag": {
                        "type": "string",
                        "description": "Flag indicating if GIV was previously updated",
                        "example": "N"
                      },
                      "settlementResponsibilityFlag": {
                        "type": "string",
                        "description": "Flag indicating settlement responsibility",
                        "example": "Y"
                      }
                    },
                    "description": "Settlement information"
                  },
                  "customerReference": {
                    "type": "string",
                    "description": "Customer reference information",
                    "example": "CUSTOMER123"
                  },
                  "merchantReference": {
                    "maxLength": 35,
                    "type": "string",
                    "description": "Merchant reference information",
                    "example": "MERCHANT-REF-12345"
                  },
                  "originalActionCode": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Original action code from the transaction being adjusted",
                    "example": "00"
                  },
                  "cardResponseTokenData": {
                    "type": "object",
                    "properties": {
                      "tokenAssuranceMethod": {
                        "maxLength": 2,
                        "minLength": 2,
                        "type": "string",
                        "description": "Method used for token assurance",
                        "example": "01"
                      },
                      "additionalTokenRespInfo": {
                        "maxLength": 1,
                        "minLength": 1,
                        "type": "string",
                        "description": "Additional token response information",
                        "example": "A"
                      }
                    },
                    "description": "Token-related response data"
                  },
                  "masterCardMerchantPaymentGatewayId": {
                    "maxLength": 11,
                    "minLength": 1,
                    "type": "string",
                    "description": "MasterCard merchant payment gateway identifier",
                    "example": "MCPG123456"
                  },
                  "senderIdentificationNumberIndividual": {
                    "type": "string",
                    "description": "Individual identification number for the sender",
                    "example": "IND123456"
                  },
                  "recipientIdentificationNumberBusiness": {
                    "type": "string",
                    "description": "Business identification number for the recipient",
                    "example": "BIZ123456"
                  },
                  "cpsAuthorizationCharactersticIndicator": {
                    "maxLength": 1,
                    "minLength": 1,
                    "type": "string",
                    "description": "CPS authorization characteristic indicator",
                    "example": "Y"
                  }
                },
                "description": "Network response details"
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Client-generated unique transaction identifier",
                "example": "ADJUST202505"
              },
              "initiatingPartyId": {
                "type": "integer",
                "description": "A unique identifier assigned by the initiating party for the API consumer",
                "format": "int64",
                "example": 987654321
              },
              "transactionDateTime": {
                "type": "string",
                "description": "Date and time when the transaction was processed",
                "format": "date-time",
                "example": "2025-05-20T14:30:45Z"
              },
              "serviceProcessingType": {
                "type": "object",
                "properties": {
                  "requestType": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Type of service processing request",
                    "example": "10"
                  }
                },
                "description": "Service processing type information"
              },
              "transactionIdentifier": {
                "type": "integer",
                "description": "Unique identifier assigned by Visa for the transaction",
                "format": "int64",
                "example": 1234567890123456
              },
              "enablerVerificationValue": {
                "maxLength": 5,
                "minLength": 5,
                "type": "string",
                "description": "Value used for verification by the enabler",
                "example": "12345"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Identifier linking related transactions",
                "example": "TRX-LINK-123456"
              }
            },
            "description": "Transaction details for the adjustment response"
          }
        },
        "description": "Response data for card transaction adjustment"
      },
      "ReturnReasonCodeDescription-1": {
        "maxLength": 105,
        "minLength": 1,
        "type": "string",
        "description": "Indicates the PSP return description when the payout is returned. Refer to PSP Return Description (add link to VDP)\n\nISO20022 field name: Payment Return - PSP Return Description\n"
      },
      "PayoutReturnRequest": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "originalPayoutId",
              "originalTransactionAmount",
              "originalTransactionCurrencyCode",
              "returnAmount",
              "returnCurrencyCode",
              "returnDateTime",
              "returnPayoutId",
              "returnReasonDetails",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/ReturnReasonCodeDetailsType"
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId"
              },
              "returnAmount": {
                "description": "The returned amount credited to Originating Entity as a result of the return Payout \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the Visa-generated unique identifier of the returned payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "originalPayoutId": {
                "description": "This is Visa-generated unique identifier of the original payout.\n\nISO20022 field name: Payment Return - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the returnAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "FlexibleAccountFrozen": {
        "type": "boolean",
        "description": "Indicates if the flexible account is frozen."
      },
      "UnspecifiedIdTypeAccount": {
        "type": "string",
        "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number\n* I-Legal Entity Identifier (LEI) Number\n* P- Passport\n* D-Driving License\n* N-National Id\n* F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
        "enum": [
          "T",
          "L",
          "I",
          "P",
          "D",
          "N",
          "F"
        ]
      },
      "CompanySenderIdentificationListWallet-1": {
        "description": "Identification list of sender",
        "items": {
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number              \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "QueryPendingCancelledResponse-7": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "QueryPendingCancelledResponse-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-5"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletPayoutRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-13"
          }
        ]
      },
      "QueryPendingCancelledResponse-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-4"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus-2"
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            },
            "exampleSetFlag": false
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "QueryPendingCancelledResponse-4": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "WalletPayoutRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-12"
          }
        ]
      },
      "TransactionIdentifier": {
        "type": "number",
        "description": "Visa generated unique identifier for the transaction",
        "format": "int64",
        "example": 123456789012345
      },
      "WalletPayoutRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-11"
          }
        ]
      },
      "QueryPendingCancelledResponse-3": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus-1"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-2"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "CompanySenderIdentificationListWallet-2": {
        "description": "Identification list of sender",
        "items": {
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number              \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USD",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "SpecialConditionIndicatorMerchant": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Cryptocurrency indicator with the value of “7” can be used to identify the purchase of cryptocurrency, thereby providing greater visibility to the issuers.\n  - 1 – Purchase of Central Bank Digital Currency (CBDC) or Tokenized Deposits\n  - 2 – Purchase of Stablecoin (fiat-backed)\n  - 3 – Purchase of Blockchain Native Token/Coin\n  - 4 – Purchase of Non-Fungible Token (NFT)\n  - 7* - Purchase of Cryptocurrency\n"
      },
      "QueryPendingCancelledResponse-2": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "WalletPayoutRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-10"
          }
        ]
      },
      "CompanySenderIdentificationListWallet-3": {
        "type": "array",
        "description": "Identification list of sender",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* T-Tax Id\n* L-Legal Entity Registration Number              \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification Code\" or \"Ultimate Debtor Organisation Identification Code\" <br> For 3rd party payments: \"Debtor Private Identification Code\" or \"Debtor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/CompanyIdTypeWallet-3"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:\"Ultimate Debtor Private Identification\" or  \"Ultimate Debtor Organisation Identification\" <br> For 3rd party payments:\"Debtor Private Identification\" or\"Debtor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Private Identification Issuer\" or \"Ultimate Debtor Organisation Identification Issuer\" <br> For 3rd party payments: \"Debtor Private Identification Issuer\" or \"Debtor Organisation Identification Issuer\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "AccountQueryErrorResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod"
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "QueryPendingCancelledResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/PendingCancelledTransactionStatus"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              }
            }
          }
        },
        "description": "Transaction is in pending or cancelled (cancelled during pending) status."
      },
      "OCTOriginatorDetail": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "acquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTCardAcceptor"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTOriginatorDetailAdditionalData"
            }
          },
          "acquirerCountryCode": {
            "$ref": "#/components/schemas/AcquirerCountryCode"
          }
        },
        "description": "Originator details for Original Credit Transaction"
      },
      "PostalCode-1": {
        "maxLength": 16,
        "minLength": 1,
        "description": "When present, this field contains individual recipient's address postal code.",
        "example": "94320",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "PostalCode-2": {
        "maxLength": 16,
        "minLength": 1,
        "description": "When present, this field contains individual recipient's address postal code.",
        "example": 94320,
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AccountQueryResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/QueryPendingCancelledResponse"
          }
        ]
      },
      "AftSenderPaymentCredentialReference-2": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "AuthenticationData": {
            "$ref": "#/components/schemas/AuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData-1"
          }
        },
        "description": "External reference to a payment credential"
      },
      "AftSenderPaymentCredentialReference-1": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "AuthenticationData": {
            "$ref": "#/components/schemas/AuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData-1"
          }
        },
        "description": "External reference to a payment credential"
      },
      "WalletPayoutRequest-17": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-16"
          }
        ]
      },
      "LedgerNotification-12": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "accountId": {
            "$ref": "#/components/schemas/AccountId-1"
          },
          "entryType": {
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "description": "An optional description for the reason why a ledger notification was performed.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-3"
              }
            ],
            "exampleSetFlag": false
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-3"
              }
            ],
            "exampleSetFlag": false
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "counterValueAmount": {
            "description": "The counter amount of the fx performed on REPATRIATION type. \n\nConditional: Present only when entryType = REPATRIATION.\n\nOmitted for all other entry types (FUNDING, JOURNAL, MANAGED_LIQUIDITY).\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "creditDebitIndicator": {
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "counterValueCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the counterValueAmount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code.\nConditional: Present only when entryType = REPATRIATION.\nOmitted for all other entry types (FUNDING, JOURNAL, MANAGED_LIQUIDITY).\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletPayoutRequest-16": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-13"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-15"
          }
        ]
      },
      "AftSenderPaymentCredentialReference-3": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID",
              "PAYMENT_CREDENTIAL_ID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". For \"PAYMENT_CREDENTIAL_ID\" length is 1-36 characters. <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "authenticationData": {
            "$ref": "#/components/schemas/AuthenticationData-1"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData"
          }
        },
        "description": "External reference to a payment credential"
      },
      "LedgerNotification-13": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "AFTSenderDetail-16": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/AFTSenderCard"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTSenderDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-1"
          },
          "PaymentCredentialReference": {
            "$ref": "#/components/schemas/AftSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Account Funding Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\nAn object MUST contain exactly one of either 'card' or 'paymentCredentialReference'.\n"
      },
      "WalletPayoutRequest-15": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-12"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-1"
          }
        ]
      },
      "LedgerNotification-10": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "AftSenderPaymentCredentialReference-6": {
        "required": [
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of payment instrument.",
            "example": "PCI_TOKEN_REFID",
            "enum": [
              "PCI_TOKEN_REFID"
            ]
          },
          "value": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\". <br>",
            "example": "TOKEN123456789"
          },
          "requestorId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
            "example": "MERCHANT123"
          },
          "AuthenticationData": {
            "$ref": "#/components/schemas/AuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData"
          }
        },
        "description": "External reference to a payment credential"
      },
      "WalletPayoutRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-14"
          }
        ]
      },
      "LedgerNotification-11": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-2"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "AFTSenderDetail-18": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/AFTSenderCard"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTSenderDetailAdditionalData-1"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-1"
          },
          "PaymentCredentialReference": {
            "$ref": "#/components/schemas/AftSenderPaymentCredentialReference-6"
          }
        },
        "description": "Sender details for Account Funding Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\nAn object MUST contain exactly one of either 'card' or 'paymentCredentialReference'.\n"
      },
      "AFTSenderDetail-11": {
        "type": "object",
        "properties": {
          "card": {
            "$ref": "#/components/schemas/AFTSenderCard"
          },
          "name": {
            "$ref": "#/components/schemas/SenderName"
          },
          "type": {
            "$ref": "#/components/schemas/SenderType"
          },
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "lastName": {
            "$ref": "#/components/schemas/SenderLastName"
          },
          "firstName": {
            "$ref": "#/components/schemas/SenderFirstName"
          },
          "middleName": {
            "$ref": "#/components/schemas/SenderMiddleName"
          },
          "occupation": {
            "$ref": "#/components/schemas/Occupation"
          },
          "dateOfBirth": {
            "$ref": "#/components/schemas/DateOfBirth-1"
          },
          "nationality": {
            "$ref": "#/components/schemas/Nationality"
          },
          "contactEmail": {
            "$ref": "#/components/schemas/SenderContactEmail"
          },
          "senderAddress": {
            "$ref": "#/components/schemas/SenderAddress"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTSenderDetailAdditionalData"
            }
          },
          "countryOfBirth": {
            "$ref": "#/components/schemas/SenderCountryOfBirth"
          },
          "identificationList": {
            "$ref": "#/components/schemas/SenderIdentificationList-1"
          },
          "PaymentCredentialReference": {
            "$ref": "#/components/schemas/AftSenderPaymentCredentialReference"
          }
        },
        "description": "Sender details for Account Funding Transaction. \n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\nAn object MUST contain exactly one of either 'card' or 'paymentCredentialReference'.\n"
      },
      "LedgerNotification-16": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "$ref": "#/components/schemas/AccountId"
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "WalletPayoutRequest-19": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-15"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-18"
          }
        ]
      },
      "RecipientMiddleName-1": {
        "maxLength": 35,
        "minLength": 2,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nRecipient middle name. ISO20022 field name: Creditor Middle Name. Format Alphabetic characters only (A–Z) May include spaces or hyphens for compound names<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Optional unless required by local compliance rules</li>\n  <li>Must not contain only numeric characters</li>\n  <li>Must not contain special symbols (except hyphen -)</li>\n  <li>Trim leading and trailing spaces</li>\n  <li>required when \"name\" is not provided.</li>\n</ul>",
        "example": "Anne"
      },
      "LedgerNotification-14": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency"
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "entryType": {
            "type": "string",
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "An optional description for the reason why a ledger notification was performed."
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date"
              }
            ]
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date"
              }
            ]
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "creditDebitIndicator": {
            "type": "string",
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa."
      },
      "WalletPayoutRequest-18": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-15"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-17"
          }
        ]
      },
      "LedgerNotification-15": {
        "required": [
          "accountId",
          "amount",
          "creditDebitIndicator",
          "currencyCode",
          "entryId",
          "entryType",
          "initiatingPartyId"
        ],
        "properties": {
          "amount": {
            "description": "Funding amount that is credited by the Originating Entity. Expressed in the currency provided in field currencyCode\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "entryId": {
            "maxLength": 35,
            "minLength": 1,
            "description": "The entry Id is used to uniquely identify a ledger notification for a single account and currency",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId-1"
              }
            ],
            "exampleSetFlag": false
          },
          "entryType": {
            "description": "Entry type helps to classify entries in ledger. \n\nPossible values:\n* 'FUNDING'\n* 'REPATRIATION'\n* 'JOURNAL'\n* 'MANAGED_LIQUIDITY'\n",
            "enum": [
              "FUNDING",
              "REPATRIATION",
              "JOURNAL",
              "MANAGED_LIQUIDITY"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "narrative": {
            "maxLength": 2000,
            "minLength": 1,
            "description": "An optional description for the reason why a ledger notification was performed.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "valueDate": {
            "description": "The date at which the funds are available to fund transactions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-3"
              }
            ],
            "exampleSetFlag": false
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "bookingDate": {
            "description": "THe date at which funds are received into the ledger.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Date-3"
              }
            ],
            "exampleSetFlag": false
          },
          "currencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "additionalInfo1": {
            "maxLength": 140,
            "minLength": 1,
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "additionalInfo2": {
            "maxLength": 140,
            "minLength": 1,
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "additionalInfo3": {
            "maxLength": 140,
            "minLength": 1,
            "description": "Additional information that may be in the original funding to the bank, and passed along in this field.\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "creditDebitIndicator": {
            "description": "Indicates that money credited to or debited from the account\n\nPossible values:\n* `CREDIT` - Indicates that the client has funded their account.\n* `DEBIT` - Indicates that money was removed from a client account.\n",
            "enum": [
              "CREDIT",
              "DEBIT"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "description": "Used to indicate to originators that various ledger entries has been received by Visa.",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AFTResponseCardAcceptor": {
        "type": "object",
        "properties": {
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        }
      },
      "WalletPayoutRequest-20": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-19"
          }
        ]
      },
      "SenderIdentification-2": {
        "type": "object",
        "properties": {
          "idType": {
            "type": "string",
            "description": "This field will contain the type of sender identification.<br><br>\nFor a given instance of identificationList[], a minimum of idType and idNumber fields should be provided, else the ID information will not be forwarded to the issuer.<br><br>\nRefer to <a href=\"request_response_codes#identification_type_codes\">Identification Type Codes</a> for valid values.",
            "example": "PASN",
            "enum": [
              "CUID",
              "NTID",
              "PASN",
              "DRLN",
              "TXIN",
              "CPNY",
              "PRXY",
              "SSNB",
              "ARNB",
              "LAWE",
              "MILI",
              "TRVL",
              "EMAL",
              "PHON",
              "BTHD",
              "IDCN",
              "MILO",
              "TRVR",
              "TRVP",
              "MILE",
              "TRVI",
              "TRVD",
              "RESP"
            ]
          },
          "idNumber": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Sender identification number (issued by a government or similar authority). Needs to be provided by Originating Entity along with the payment in certain markets.\n",
            "example": "A1234567"
          },
          "idOwnerType": {
            "type": "string",
            "enum": [
              "C",
              "I"
            ]
          },
          "idIssueCountry": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Sender identification issuing country.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>3-digit numeric or 3-character alpha ISO country code.</li>\n</ul>",
            "example": "USA"
          }
        },
        "description": "Sender identification document details"
      },
      "WalletPayoutRequest-24": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-23"
          }
        ]
      },
      "AccountWalletRecipientPayoutAddress-2": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 1\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Line 2\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2-2"
              }
            ]
          }
        }
      },
      "WalletPayoutRequest-23": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-22"
          }
        ]
      },
      "IdentityFieldInput": {
        "title": "IdentityFieldInput",
        "type": "string",
        "description": "Supported input types for a recipient identity UI.",
        "enum": [
          "text",
          "date",
          "number",
          "list"
        ],
        "x-enum-elements": [
          {
            "name": "text",
            "description": "Text UI field."
          },
          {
            "name": "date",
            "description": "Date UI field."
          },
          {
            "name": "number",
            "description": "Number UI field."
          },
          {
            "name": "list",
            "description": "List UI field."
          }
        ]
      },
      "RecipientLocalNameData": {
        "required": [
          "encodingFormat",
          "languageCode"
        ],
        "type": "object",
        "properties": {
          "lastName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Recipient's last name in local language."
          },
          "aliasName": {
            "maxLength": 70,
            "minLength": 1,
            "type": "string",
            "description": "Recipient's alias name in local language."
          },
          "firstName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Recipient's first name in local language."
          },
          "middleName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Recipient's middle name in local language."
          },
          "languageCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "3 characters ISO 639 language code. Example 'heb' for Hebrew."
          },
          "encodingFormat": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "01 = UTF-8"
          }
        }
      },
      "WalletPayoutRequest-22": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-21"
          }
        ]
      },
      "ReturnReasonCodeDescription-2": {
        "maxLength": 105,
        "minLength": 1,
        "description": "Indicates the PSP return description when the payout is returned. Refer to PSP Return Description\n\nISO20022 field name: Payment Return - PSP Return Description\n",
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "ErrorResponseWithMandatoryFields": {
        "required": [
          "details",
          "reason",
          "status"
        ],
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "The short description of the error."
          },
          "status": {
            "maximum": 999,
            "minimum": 100,
            "type": "integer",
            "description": "3 digit HTTP status code",
            "example": 400
          },
          "details": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "A short code indicating the specific error that occurred."
                },
                "message": {
                  "type": "string",
                  "description": "The long description of the specific error that occurred."
                },
                "location": {
                  "type": "string",
                  "description": "The place in the incoming message that the particular error occurred."
                }
              }
            }
          },
          "message": {
            "type": "string",
            "description": "The long description of the error"
          }
        }
      },
      "WalletPayoutRequest-21": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletTransactionDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutWalletRequest-20"
          }
        ]
      },
      "SenderIdentification-1": {
        "type": "object",
        "properties": {
          "idType": {
            "type": "string",
            "description": "Type of identification document. Valid types include: CUID (Customer ID), NTID (National ID), PASN (Passport), DRLN (Driver License), TXIN (Tax ID), CPNY (Company ID), PRXY (Proxy ID), SSNB (Social Security Number), ARNB (Alien Registration Number), LAWE (Law Enforcement ID), MILI (Military ID), TRVL (Travel Document), EMAL (Email), PHON (Phone), BTHD (Date of Birth)\n",
            "example": "PASN",
            "enum": [
              "CUID",
              "NTID",
              "PASN",
              "DRLN",
              "TXIN",
              "CPNY",
              "PRXY",
              "SSNB",
              "ARNB",
              "LAWE",
              "MILI",
              "TRVL",
              "EMAL",
              "PHON",
              "BTHD"
            ]
          },
          "idNumber": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Sender identification number (issued by a government or similar authority). Needs to be provided by Originating Entity along with the payment in certain markets.\n",
            "example": "A1234567"
          },
          "idOwnerType": {
            "type": "string",
            "enum": [
              "C",
              "I"
            ]
          },
          "idIssueCountry": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Sender identification issuing country. Format: 3-character ISO (Alpha-3) country code.\n",
            "example": "USA"
          }
        },
        "description": "Sender identification document details"
      },
      "AncillarySenderDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "This field identifies if the contact information is for a business or an individual. The valid value are: 'B' for Business and 'I' for Individual."
          },
          "address": {
            "$ref": "#/components/schemas/AncillarySenderDetailAddress"
          },
          "lastName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains ancillary sender's last name"
          },
          "firstName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains ancillary sender's first name"
          },
          "middleName": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "This field contains ancillary sender's middle name"
          }
        }
      },
      "BankName": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "example": "Bank of America"
      },
      "WalletRecipientTransactorDetailWithID-7": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-7"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-7"
          }
        ]
      },
      "OCTTransactionPosData-3": {
        "type": "object",
        "properties": {
          "pinData": {
            "required": [
              "pinBlockFormatCode",
              "pinDataBlock"
            ],
            "type": "object",
            "properties": {
              "pinDataBlock": {
                "maxLength": 8,
                "minLength": 8,
                "type": "string",
                "description": "Contains the encrypted PIN block used for PIN-based transactions to ensure secure transmission of the cardholder's PIN. Format Binary string of 8 characters.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must comply with ISO 9564 PIN block format and encryption standards.</li>\n</ul>",
                "format": "binary"
              },
              "zoneKeyIndex": {
                "maximum": 99,
                "minimum": 0,
                "type": "integer",
                "description": "Zone key index"
              },
              "pinBlockFormatCode": {
                "type": "integer",
                "description": "PIN block format code"
              }
            }
          },
          "panEntryMode": {
            "$ref": "#/components/schemas/PanEntryMode"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator-1"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "chipConditionCode": {
            "$ref": "#/components/schemas/ChipConditionCode-1"
          },
          "magneticStripeData": {
            "type": "object",
            "properties": {
              "track1Data": {
                "maxLength": 76,
                "minLength": 1,
                "type": "string",
                "description": "Track 1 data from magnetic stripe"
              },
              "track2Data": {
                "maxLength": 19,
                "minLength": 1,
                "type": "string",
                "description": "Track 2 data from magnetic stripe",
                "format": "binary"
              }
            }
          },
          "chipTransactionIndicator": {
            "$ref": "#/components/schemas/ChipTransactionIndicator"
          },
          "pointOfServiceCapability": {
            "required": [
              "terminalEntryCapability",
              "terminalType"
            ],
            "type": "object",
            "properties": {
              "terminalType": {
                "maximum": 9,
                "minimum": 0,
                "type": "integer",
                "description": "Identifies the basic POS electronic terminal category. Recommended value for card-not-present transactions is 0. Default value is 0. Format Single-digit numeric code representing terminal type.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>0</li>\n  <li>3</li>\n  <li>4</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid terminal type code defined by Visa Direct specifications. Apply conditional rules:</li>\n  <li>Card-present: valid values are 0, 3, 4</li>\n  <li>Card-not-present: valid value is 0</li>\n  <li>Default is 0.</li>\n</ul>"
              },
              "terminalEntryCapability": {
                "maximum": 9,
                "minimum": 0,
                "type": "integer",
                "description": "Indicates the terminal's capability for accepting card data entry (e.g., magnetic stripe, chip, contactless). For Core OCT, this identifies how the card data was captured at the point of service. Format Single-digit numeric code representing terminal entry capability.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid terminal entry capability code defined by Visa Direct specifications.</li>\n</ul>"
              }
            }
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData-1"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant-3"
          },
          "chipAuthenticationReliabilityIndicator": {
            "$ref": "#/components/schemas/ChipAuthenticationReliabilityIndicator"
          }
        },
        "description": "Point of Service data for Original Credit Transaction"
      },
      "WalletRecipientTransactorDetailWithID-6": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-6"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-6"
          }
        ]
      },
      "OCTTransactionPosData-2": {
        "type": "object",
        "properties": {
          "pinData": {
            "required": [
              "pinBlockFormatCode",
              "pinDataBlock"
            ],
            "type": "object",
            "properties": {
              "pinDataBlock": {
                "maxLength": 8,
                "minLength": 8,
                "type": "string",
                "description": "PIN data block",
                "format": "binary"
              },
              "zoneKeyIndex": {
                "maximum": 99,
                "minimum": 0,
                "type": "integer",
                "description": "Zone key index"
              },
              "pinBlockFormatCode": {
                "type": "integer",
                "description": "PIN block format code"
              }
            }
          },
          "panEntryMode": {
            "$ref": "#/components/schemas/PanEntryMode"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "chipConditionCode": {
            "$ref": "#/components/schemas/ChipConditionCode"
          },
          "magneticStripeData": {
            "type": "object",
            "properties": {
              "track1Data": {
                "maxLength": 76,
                "minLength": 1,
                "type": "string",
                "description": "Track 1 data from magnetic stripe"
              },
              "track2Data": {
                "maxLength": 19,
                "minLength": 1,
                "type": "string",
                "description": "Track 2 data from magnetic stripe",
                "format": "binary"
              }
            }
          },
          "chipTransactionIndicator": {
            "$ref": "#/components/schemas/ChipTransactionIndicator"
          },
          "pointOfServiceCapability": {
            "required": [
              "terminalEntryCapability",
              "terminalType"
            ],
            "type": "object",
            "properties": {
              "terminalType": {
                "maximum": 9,
                "minimum": 0,
                "type": "integer",
                "description": "Terminal type"
              },
              "terminalEntryCapability": {
                "maximum": 9,
                "minimum": 0,
                "type": "integer",
                "description": "Terminal entry capability"
              }
            }
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant-2"
          },
          "chipAuthenticationReliabilityIndicator": {
            "$ref": "#/components/schemas/ChipAuthenticationReliabilityIndicator"
          }
        },
        "description": "Point of Service data for Original Credit Transaction"
      },
      "WalletRecipientTransactorDetailWithID-9": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-9"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-9"
          }
        ],
        "exampleSetFlag": false
      },
      "OCTTransactionPosData-1": {
        "type": "object",
        "properties": {
          "pinData": {
            "required": [
              "pinBlockFormatCode",
              "pinDataBlock"
            ],
            "type": "object",
            "properties": {
              "pinDataBlock": {
                "maxLength": 8,
                "minLength": 8,
                "type": "string",
                "description": "PIN data block",
                "format": "binary"
              },
              "zoneKeyIndex": {
                "maximum": 99,
                "minimum": 0,
                "type": "integer",
                "description": "Zone key index"
              },
              "pinBlockFormatCode": {
                "type": "integer",
                "description": "PIN block format code"
              }
            }
          },
          "panEntryMode": {
            "$ref": "#/components/schemas/PanEntryMode"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "chipConditionCode": {
            "$ref": "#/components/schemas/ChipConditionCode"
          },
          "magneticStripeData": {
            "type": "object",
            "properties": {
              "track1Data": {
                "maxLength": 76,
                "minLength": 1,
                "type": "string",
                "description": "Track 1 data from magnetic stripe"
              },
              "track2Data": {
                "maxLength": 19,
                "minLength": 1,
                "type": "string",
                "description": "Track 2 data from magnetic stripe",
                "format": "binary"
              }
            }
          },
          "chipTransactionIndicator": {
            "$ref": "#/components/schemas/ChipTransactionIndicator"
          },
          "pointOfServiceCapability": {
            "required": [
              "terminalEntryCapability",
              "terminalType"
            ],
            "type": "object",
            "properties": {
              "terminalType": {
                "maximum": 9,
                "minimum": 0,
                "type": "integer",
                "description": "Terminal type"
              },
              "terminalEntryCapability": {
                "maximum": 9,
                "minimum": 0,
                "type": "integer",
                "description": "Terminal entry capability"
              }
            }
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant-1"
          },
          "chipAuthenticationReliabilityIndicator": {
            "$ref": "#/components/schemas/ChipAuthenticationReliabilityIndicator"
          }
        },
        "description": "Point of Service data for Original Credit Transaction"
      },
      "WalletRecipientTransactorDetailWithID-8": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-8"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-8"
          }
        ],
        "exampleSetFlag": false
      },
      "PayoutNotification-20": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout-11"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress-10"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout-4"
          }
        ]
      },
      "CreateQuoteRequest": {
        "required": [
          "amount",
          "amountType",
          "buyCurrency",
          "initiatingPartyId",
          "sellCurrency"
        ],
        "type": "object",
        "properties": {
          "amount": {
            "description": "Amount value for the given amount type.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "amountType": {
            "type": "string",
            "description": "Amount Type\n",
            "example": "BUY",
            "enum": [
              "BUY",
              "SELL"
            ]
          },
          "buyCurrency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "sellCurrency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          }
        }
      },
      "SenderAccountPayoutAddress": {
        "required": [
          "addressLine1",
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "description": "Sender address city\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Town Name\" <br> For 3rd party payments: \"Debtor Address Town Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Sender address state\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments:  \"Ultimate Debtor Address Country Sub-division\" <br> For 3rd party payments: \"Debtor Address Country Sub-division\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Sender address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Country\" <br> For 3rd party payments: \"Debtor Address Country\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Sender address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: <br> For 4th  party payments: \"Ultimate Debtor Address Postal Code\" <br> For 3rd party payments: \"Debtor Address Postal Code\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Sender address line 1\n\nISO20022 field name:<br> For 4th  party payments:  \"Ultimate Debtor Address Street Name\" <br> For 3rd party payments: \"Debtor Address Street Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Sender address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name:<br> For 4th  party payments: \"Ultimate Debtor Address Floor\" <br> For 3rd party payments: \"Debtor Address Floor\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2"
              }
            ]
          }
        }
      },
      "WalletRecipientTransactorDetailWithID-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-1"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-1"
          }
        ]
      },
      "PayoutWalletRequest-29": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-13"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "industryCode": {
                "$ref": "#/components/schemas/industryCode-1"
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-6"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-10"
              }
            ]
          }
        }
      },
      "AFTSenderCard-1": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "expirationDate"
        ],
        "type": "object",
        "properties": {
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string",
            "description": "For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "schemeIdentifier": {
            "$ref": "#/components/schemas/SchemeIdentifier"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/AuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData-1"
          }
        }
      },
      "WalletRecipientTransactorDetailWithID-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-3"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-3"
          }
        ]
      },
      "PayoutWalletRequest-28": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-5"
              }
            ],
            "exampleSetFlag": false
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-12"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-4"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-5"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-9"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AFTSenderCard-2": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "expirationDate"
        ],
        "type": "object",
        "properties": {
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string",
            "description": "For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "schemeIdentifier": {
            "$ref": "#/components/schemas/SchemeIdentifier"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/AuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData-1"
          }
        }
      },
      "WalletRecipientTransactorDetailWithID-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-2"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-2"
          }
        ]
      },
      "PayoutWalletRequest-27": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-9"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-3"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-15"
              }
            ]
          }
        }
      },
      "AFTSenderCard-3": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "expirationDate"
        ],
        "type": "object",
        "properties": {
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string",
            "description": "For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate-1"
          },
          "schemeIdentifier": {
            "$ref": "#/components/schemas/SchemeIdentifier-1"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/AuthenticationData-1"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData"
          }
        }
      },
      "WalletRecipientTransactorDetailWithID-5": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-5"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-5"
          }
        ]
      },
      "PayoutWalletRequest-26": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-11"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-2"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-11"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-2"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-2"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-14"
              }
            ]
          }
        }
      },
      "WalletRecipientTransactorDetailWithID-4": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIsIndividual-4"
          },
          {
            "$ref": "#/components/schemas/WalletRecipientIsCompany-4"
          }
        ]
      },
      "PayoutWalletRequest-25": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-4"
              }
            ],
            "exampleSetFlag": false
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-10"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "industryCode": {
                "$ref": "#/components/schemas/industryCode"
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-7"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-4"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletSenderTransactorDetailWithID-3"
              }
            ],
            "exampleSetFlag": false
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-4"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-4"
                  }
                ],
                "exampleSetFlag": false
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-2"
              },
              "contactNumberType": {
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ],
                "exampleSetFlag": false,
                "types": [
                  "string"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/WalletRecipientTransactorDetailWithID-8"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ScheduleTransaction": {
        "required": [
          "dateTime",
          "requestType"
        ],
        "type": "object",
        "properties": {
          "dateTime": {
            "maxLength": 12,
            "minLength": 12,
            "pattern": "^\\d{12}$",
            "type": "string",
            "description": "if exist, identifies when the transaction will be processed by visa.\n\nFormat of this value will be CCYYMMDDHHMM\n\nCC- Current Century\n\nYY - Year\n\nMM - Month\n\nDD - Date\n\nHH - Hour\n\nMM - Minute\n"
          },
          "requestType": {
            "$ref": "#/components/schemas/RequestType"
          }
        }
      },
      "PayoutNotification-16": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout-9"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress-8"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout-2"
          }
        ],
        "exampleSetFlag": false
      },
      "PayoutNotification-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout-8"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress-7"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout"
          }
        ]
      },
      "PayoutNotification-18": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutNotificationReceivedRequest-16"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationProcessRequest-21"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationFailedRequest-12"
          }
        ]
      },
      "PayoutNotification-17": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutNotificationReceivedRequest-15"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationProcessRequest-20"
          },
          {
            "$ref": "#/components/schemas/PayoutNotificationFailedRequest-11"
          }
        ]
      },
      "PayoutNotification-19": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout-10"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress-9"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout-3"
          }
        ],
        "exampleSetFlag": false
      },
      "InvalidPayoutResponse-2": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-3"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          }
        }
      },
      "InvalidPayoutResponse-1": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-3"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "AmountWithZero-1": {
        "minimum": 0,
        "type": "number",
        "format": "double",
        "example": 12.34
      },
      "AmountWithZero-2": {
        "minimum": 0,
        "type": "number",
        "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType",
        "format": "double",
        "example": 12.34
      },
      "PayoutNotification-12": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayoutReceivedAfter202InSendPayout"
          },
          {
            "$ref": "#/components/schemas/PayoutStatusesInProgress-5"
          },
          {
            "$ref": "#/components/schemas/PayoutFailedAfter202InSendPayout"
          }
        ]
      },
      "AmountWithZero-3": {
        "minimum": 0,
        "description": "This field only applies to 'THRESHOLD' and 'LIQUIDITY_FAILURE' eventType. Threshold value would be zero for LIQUIDITY_FAILURE eventType.\n",
        "format": "double",
        "example": 12.34,
        "exampleSetFlag": true,
        "types": [
          "number"
        ]
      },
      "InvalidPayoutResponse-4": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-1"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          }
        }
      },
      "InvalidPayoutResponse-3": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse-4"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "industryCode-1": {
        "maxLength": 4,
        "minLength": 3,
        "type": "string",
        "description": "Code describing the sender's type of industry or service. Only required in the following use case: Visa Direct for Wallet Business to Consumer payments. See the Wallet Payments Endpoint Guide for further details.\n",
        "example": "1400"
      },
      "InvalidPayoutResponse-8": {
        "required": [
          "validationDetails",
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "validationDetails": {
            "type": "array",
            "description": "comprehensive array of errors",
            "items": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          },
          "validationResultCode": {
            "type": "string",
            "description": "- INVALID - see validationDetails for validation errors\n",
            "enum": [
              "INVALID"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-1"
              }
            ]
          }
        }
      },
      "RouteDefinitionRecallPerCountryClusterAndCurrency-1": {
        "required": [
          "metadataVersion",
          "metadataVersionDate",
          "notificationId",
          "notificationType",
          "payoutMethod",
          "recipientCountryCluster",
          "recipientCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Payout method code. Valid value is B- bank.\n",
            "enum": [
              "B"
            ]
          },
          "notificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique identifier for the notification. In case of a recall (i.e., when the notificationType is \"RECALL\"), this field will contain the notificationId of a previously sent notification that is being recalled.\n",
            "example": "58e0a7d7-eebc-11d8-9669-0800200c9a66"
          },
          "metadataVersion": {
            "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
            "type": "string",
            "description": "This is the version of the route definition recalled by VISA. \nIt is in the format <major-version>.<minor-version>.<patch>.\n\n* patch updates are documentation updates only and should not influence the processing of a payout transaction. Example: changes to the description of Purpose of Payment code.\n\n* minor-version updates indicate backward compatible changes in the route validation rules on a payout transaction. Example: addition of a new Purpose of Payment code.\n\n* major-version updates indicate backward incompatible changes in the route validation rules on a payout transaction. Such changes are usually regulatory in nature or due to partner migration on Visa's backend. Example: Purpose of Payment code changing from a \"conditional\"/ \"recommended\" to a \"required\" field.\n",
            "example": "1.0.0"
          },
          "notificationType": {
            "type": "string",
            "description": "Notification type.\n",
            "enum": [
              "RECALL"
            ]
          },
          "metadataVersionDate": {
            "type": "string",
            "description": "This was the expected go-live date of the recalled metadata version.",
            "format": "date"
          },
          "recipientCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO-4217 (Alpha-3) currency code\n",
            "example": "USD"
          },
          "recipientCountryCluster": {
            "type": "string",
            "description": "Country Cluster code-valid values are SEPA, CEMAC, UEMOA\n",
            "enum": [
              "SEPA",
              "CEMAC",
              "UEMOA"
            ]
          }
        }
      },
      "ServiceLocationPostalCode-1": {
        "maxLength": 10,
        "minLength": 5,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field contains the postal code of the country where the cardholder received the services. This field is required for all MasterCard transactions.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Alphanumeric.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the postal code format for the country of the service location.</li>\n  <li>Required only when the transaction meets MasterCard conditional requirements.</li>\n  <li>This field is required for all MasterCard transactions.</li>\n</ul>",
        "example": "78701"
      },
      "AccountWalletIdType": {
        "type": "string",
        "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.\n\n  Valid values :\n  \n  P- Passport\n  D-Driving License\n  N-National Id\n  T-Tax Id\n  L-Legal Entity Registration Number\n  F-Foreign Id\n  \n  ISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
        "enum": [
          "P",
          "D",
          "N",
          "T",
          "L",
          "F"
        ]
      },
      "UpdatePayoutStatusRequest": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/UpdatePayoutRequest"
          }
        ]
      },
      "IndividualRecipientIdentificationListWallet": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* F-Foreign Id            \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IndividualIdTypeWallet"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "SettlementDate": {
        "type": "string",
        "description": "Date when settlement occurs",
        "format": "date"
      },
      "AFTSenderCard": {
        "required": [
          "accountNumber",
          "accountNumberType",
          "expirationDate"
        ],
        "type": "object",
        "properties": {
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string",
            "description": "For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "schemeIdentifier": {
            "$ref": "#/components/schemas/SchemeIdentifier"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT"
            ]
          },
          "authenticationData": {
            "$ref": "#/components/schemas/AuthenticationData"
          },
          "addressVerificationData": {
            "$ref": "#/components/schemas/AddressVerificationData"
          }
        }
      },
      "NetworkResponse-1": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "$ref": "#/components/schemas/PosData-2"
          },
          "vauData": {
            "$ref": "#/components/schemas/NetworkResponseVauData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-3"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "statusIdentifier": {
            "$ref": "#/components/schemas/StatusIdentifier"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData"
          },
          "riskAssessmentResults": {
            "$ref": "#/components/schemas/RiskAssessmentResults-2"
          },
          "reimbursementAttribute": {
            "$ref": "#/components/schemas/ReimbursementAttribute"
          },
          "cardVerificationResults": {
            "$ref": "#/components/schemas/CardVerificationResults"
          },
          "recipientIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "AccountWalletRecipientTransactorDetail": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountWalletRecipientIndividual"
          },
          {
            "$ref": "#/components/schemas/AccountWalletRecipientCompany"
          }
        ]
      },
      "AccountQueryErrorResponse-4": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-1"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "AccountQueryErrorResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-4"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "accountVerificationRequired-1": {
        "description": "Indicates whether account verification services are required.If True, account will be verified.If False, account verification will be skipped. Applicable only for Accounts.",
        "exampleSetFlag": false,
        "types": [
          "boolean"
        ]
      },
      "AccountQueryErrorResponse-2": {
        "type": "object",
        "properties": {
          "transactionalDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "PurposeOfPayments": {
        "title": "PurposeOfPayments",
        "required": [
          "mandatory"
        ],
        "type": "object",
        "properties": {
          "mandatory": {
            "type": "boolean",
            "description": "Whether the purpose of payment is mandatory.",
            "example": true
          },
          "purposeOfPaymentCodes": {
            "type": "array",
            "description": "List of valid purpose of payment codes.",
            "items": {
              "$ref": "#/components/schemas/PurposeOfPaymentCodes"
            }
          }
        },
        "description": "This group contains all configuration information for Purpose of Payment options. The 'mandatory' attribute indicates whether provision of Purpose of Payment data is required for the Payout to be accepted."
      },
      "AccountQueryErrorResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethod-1"
          },
          "transactionDetail": {
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "type": "string",
                "description": "- VALIDATION_FAILED: Payout request failed validation\n- ERROR: Payout is in error status\n",
                "enum": [
                  "VALIDATION_FAILED",
                  "ERROR"
                ]
              },
              "errorDetails": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ErrorResponse-3"
                }
              }
            }
          }
        },
        "description": "Transaction is accepted and will be processed & notified status."
      },
      "CardQueryResponse": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/CardQueryTransactionResponse"
          }
        ]
      },
      "AdjustPayoutResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "networkResponse",
              "payoutId",
              "status",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "status of the adjustment\n"
              },
              "payoutId": {
                "description": "Return Payout Id\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "networkResponse": {
                "required": [
                  "actionCode",
                  "tokenAssuranceMethod"
                ],
                "type": "object",
                "properties": {
                  "actionCode": {
                    "type": "string",
                    "description": "The results of the transaction request\n"
                  },
                  "settlementFlags": {
                    "type": "object",
                    "properties": {
                      "givUpdatedFlag": {
                        "type": "string",
                        "enum": [
                          "true",
                          "false"
                        ]
                      },
                      "settlementserviceFlag": {
                        "maxLength": 1,
                        "minLength": 0,
                        "type": "string",
                        "description": "Possible values are:\n0 - International Settlement\n9 - VIP to decide\n8 - National Settlement\n"
                      },
                      "givPreviouslyUpdatedFlag": {
                        "type": "string",
                        "enum": [
                          "true",
                          "false"
                        ]
                      },
                      "settlementResponsibilityFlag": {
                        "type": "string",
                        "enum": [
                          "true",
                          "false"
                        ]
                      }
                    }
                  },
                  "cutomerReference": {
                    "type": "string",
                    "description": "Should match the zip code information submitted in the original PullFundsTransactions.\n"
                  },
                  "originalActionCode": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "Should match the county information submitted in the original PullFundsTransactions.\n"
                  },
                  "tokenAssuranceMethod": {
                    "maxLength": 2,
                    "minLength": 2,
                    "type": "string",
                    "description": "This field contains different category value to determine the Risk Score associated with the token and transaction.\n"
                  },
                  "serviceProcessingType": {
                    "required": [
                      "requestType"
                    ],
                    "type": "object",
                    "properties": {
                      "requestType": {
                        "maxLength": 2,
                        "minLength": 1,
                        "type": "string"
                      }
                    }
                  },
                  "additionalTokenRespinfo": {
                    "maxLength": 1,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field when present in the API response identifies if the transaction is eligible for token services. Valid token service values are: 1 (Token program).\n\nThis field will not be sent in the response if the transaction is ineligible for token services.\n"
                  },
                  "transactionLinkIdentifier": {
                    "maxLength": 36,
                    "minLength": 1,
                    "type": "string"
                  },
                  "mastercardMerchantPaymentGatewayId": {
                    "maxLength": 11,
                    "minLength": 1,
                    "type": "string",
                    "description": "This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled.\n"
                  },
                  "senderIdentificationNumberIndividual": {
                    "type": "string",
                    "description": "This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification.\nThis field needs to be populated for Argentina domestic (OCT Debit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
                  },
                  "recipientIdentificationNumberBusiness": {
                    "type": "string",
                    "description": "For Argentina domestic purchase transactions this field contains the merchant’s value-added tax (VAT) registration number or single business reference number (SBRN).\nThis field needs to be populated for Argentina domestic (AFT Credit Adjustment ) transactions where businessApplicationId is \"PS\".\n"
                  },
                  "cpsAuthorizationCharactersticsIndicator": {
                    "type": "string",
                    "description": "Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified)\n\nNote:Supported only in US for CPS (Custom Payment Service). Please reach out to your Visa representative for details.\n",
                    "enum": [
                      "F",
                      "N",
                      "T"
                    ]
                  }
                },
                "description": "network response\n"
              },
              "transactionDateTime": {
                "description": "This field contains the local date and time when the\nAdjustment transaction is submitted. Format: YYYY-MM-DDThh:mm:ss.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              }
            }
          }
        }
      },
      "NetworkResponses-9": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "electronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "NetworkResponses-4": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "NetworkResponses-3": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "NetworkResponses-2": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "NetworkResponses-1": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "NetworkResponses-8": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "NetworkResponses-7": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "NetworkResponses-6": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "NetworkResponses-5": {
        "required": [
          "acquirerCountryCode",
          "acquiringBin",
          "cardAcceptorId",
          "retrievalReferenceNumber",
          "settlementResponsibilityFlag",
          "systemTraceAuditNumber",
          "terminalId",
          "transactionAmount",
          "transactionCurrencyCode",
          "type"
        ],
        "type": "object",
        "properties": {
          "rail": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "example: id=mastercard\n"
              },
              "responseReasonCode": {
                "maxLength": 4,
                "minLength": 1,
                "type": "string",
                "description": "This field contains the merchant advice code value received from Mastercard authorization response messages.\n"
              },
              "transactionLinkIdentifier": {
                "maxLength": 36,
                "minLength": 1,
                "type": "string",
                "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse\n"
              },
              "mastercardElectronicCommerceIndicators": {
                "maxLength": 19,
                "minLength": 7,
                "type": "string",
                "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions.\n"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "PullFundsTransaction",
              "PushFundsTransaction",
              "PullFundsTransactionReversal"
            ]
          },
          "vauData": {
            "$ref": "#/components/schemas/VAUData"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-1"
          },
          "tokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData-1"
          },
          "actionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Response code that provides the result of the payout request. List of <a href=\"https://developer.visa.com/request_response_codes#action_code\">valid response codes</a>\n",
            "example": "00"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN).            This field is returned only when token is provided in the payout request.\n"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-1"
          },
          "acquiringBin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcquiringBin-1"
              }
            ]
          },
          "approvalCode": {
            "description": "This is a unique authorization code for an approved transaction from Issuer\n\nISO20022 field name: N/A\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/ApprovalCode-1"
              }
            ]
          },
          "dafIndicator": {
            "type": "string",
            "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.\n\nPossible values are true or false          \n",
            "enum": [
              "true",
              "false"
            ]
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "<b>Only applicable to push transfer</b>PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "<b>Only applicable to push transfer</b>Provider of the PFX exchange rate"
              }
            }
          },
          "errorResponse": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            ]
          },
          "approvedAmount": {
            "description": "This field contains the partially approved AFT transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount            \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "cardAcceptorId": {
            "description": "An identifier that uniquely identifies the Originating Entity.  For Push to Card transactions, Card Acceptor Terminal ID (CAID) should be populated\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CardAcceptorId-1"
              }
            ]
          },
          "cavvResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "The cavvResultCode identifies the outcome of the CAVV validation.<br><br>Note: When using dual cryptograms (both TAVV and CAVV ), If TAVV is valid than cavvResultCode would convey the outcome of the CAVV validation. <br><br>Refer to <a href=\"/request_response_codes#cardholder_authentication_verification_value\">cavvResultCode</a>"
          },
          "cvv2ResultCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the CVV2 validation for the primaryAccountNumber in the request. When dtvv is provided in cardCvv2Value in the request, cvv2ResultCode will be sent in response along with tokenVerificationResult<br>Refer to <a href=\"/request_response_codes#cvv2ResultsCode\">cvv2ResultsCode</a>"
          },
          "givUpdatedFlag": {
            "description": "This field identifies the GivUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivUpdatedFlag-1"
              }
            ]
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "responseSource": {
            "$ref": "#/components/schemas/ResponseSource"
          },
          "motoECIIndicator": {
            "maximum": 8,
            "minimum": 1,
            "type": "integer",
            "description": "network returned security level\n"
          },
          "settlementAmount": {
            "type": "number",
            "description": "Transaction amount converted in settlement currency.<b>Only applicable to push transfer</b>",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "customerReference": {
            "maxLength": 17,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
          },
          "transactionAmount": {
            "description": "This field contains the transaction amount in the currency specified by the currency code in 'transactionCurrencyCode'. \nThe amount of POS funds requested by the cardholder, expressed in the local currency in an original authorization or financial transaction. \nThis field also contains the acquirer-assessed surcharge.            \n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "originalActionCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "Contains a code that provides the result of original payout request when current request is identified as duplicate of original and actionCode will be 94."
          },
          "prepaidBalanceData": {
            "$ref": "#/components/schemas/PrepaidBalanceData-1"
          },
          "acquirerCountryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "feeProgramIndicator": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Note: If present, a valid value is required. Spaces or special characters are not allowed."
          },
          "riskAssessmentResult": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RiskAssessmentResult"
              }
            ]
          },
          "transmissionDateTime": {
            "description": "The time the request was processed by Visa\n",
            "example": "2021-01-01T22:52:46.000Z",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "settlementServiceFlag": {
            "description": "This field identifies the SettlementServiceFlag\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementServiceFlag-1"
              }
            ]
          },
          "settlementCurrencyCode": {
            "type": "integer",
            "description": "<b>Only applicable to push transfer</b>Settlement Currency code",
            "x-variant": "positive,Length- totalDigits 3"
          },
          "systemTraceAuditNumber": {
            "description": "This field contains a number generated by Visa that uniquely identifies a transaction and all message types. The trace number is a key data element used to match a response to its request or to match a message to others for a given transaction set\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SystemTraceAuditNumber"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: \"PHP\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "maxLength": 5,
            "minLength": 5,
            "type": "string",
            "description": "Enabler Verification Value (EVV) is a Visa assigned value that is used to identify enablers that participate in certain programs. The EVV is unique to the enabler.\n"
          },
          "givPreviouslyUpdatedFlag": {
            "description": "This field identifies the GivPreviouslyUpdatedFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag-1"
              }
            ]
          },
          "retrievalReferenceNumber": {
            "description": "This is a unique identifier generated by Visa for a card transaction\n\nThe format is ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/RetrievalReferenceNumber-1"
              }
            ]
          },
          "settlementConversionRate": {
            "type": "number",
            "description": "<b>Only applicable to push transfer</b>Exchange Rate used to convert the transaction amount to settlement amount in case of multi-currency<br>Note:<br>get the value in decimal values by combining rate value with rate decimal positions",
            "format": "bigDecimal",
            "x-variant": "fractionDigits 3"
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results.\nRefer to cardAuthenticationResults (https://developer.visa.com/request_response_codes#cardAuthenticationResults)\n"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string"
          },
          "settlementResponsibilityFlag": {
            "description": "This field identifies the settlementResponsibilityFlag. Possible values are true or false\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/SettlementResponsibilityFlag-1"
              }
            ]
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional.</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer’s VAT registration number for tax identification."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Indicates whether AFT transaction has qualified for CPS. Possible values are : F (Meets CPS/Account Funding requirements) , N (Not Qualified), T (Not Qualified).<br><br><b>Note:</b> Supported only in US for CPS (Custom Payment Service). <br>Please reach out to your Visa representative for details."
          }
        }
      },
      "ValidatePayoutDigitalAssetRequestAltered-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/DigitalAssetValidateWalletTransactionDetail-3"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutDigitalAssetRequestAltered-10"
          }
        ]
      },
      "AFTRTransactionDetail-3": {
        "required": [
          "businessApplicationId",
          "id",
          "idType",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "card": {
            "type": "object",
            "properties": {
              "posData": {
                "$ref": "#/components/schemas/PosData-2"
              }
            }
          },
          "fees": {
            "$ref": "#/components/schemas/Fees-2"
          },
          "idType": {
            "$ref": "#/components/schemas/IdType-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "schemeIdentifier": {
            "$ref": "#/components/schemas/SchemeIdentifier"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "originalacquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "systemsTraceAuditNumber": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          },
          "transactionCurrencyCode": {
            "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Account Funding Transaction Reversal"
      },
      "AFTRTransactionDetail-1": {
        "required": [
          "businessApplicationId",
          "id",
          "idType",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "card": {
            "type": "object",
            "properties": {
              "posData": {
                "$ref": "#/components/schemas/PosData-1"
              }
            }
          },
          "fees": {
            "$ref": "#/components/schemas/Fees-1"
          },
          "idType": {
            "$ref": "#/components/schemas/IdType-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "schemeIdentifier": {
            "$ref": "#/components/schemas/SchemeIdentifier"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "originalacquiringBin": {
            "$ref": "#/components/schemas/AcquiringBin"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "systemsTraceAuditNumber": {
            "$ref": "#/components/schemas/SystemsTraceAuditNumber"
          },
          "transactionCurrencyCode": {
            "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Account Funding Transaction Reversal"
      },
      "AFTRTransactionDetail-2": {
        "required": [
          "id",
          "idType",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "card": {
            "type": "object",
            "properties": {
              "posData": {
                "$ref": "#/components/schemas/PosData-1"
              }
            }
          },
          "fees": {
            "$ref": "#/components/schemas/Fees-1"
          },
          "idType": {
            "$ref": "#/components/schemas/IdType-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "transactionCurrencyCode": {
            "description": "Use a 3-character alpha currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          }
        },
        "description": "Transaction details for Account Funding Transaction Reversal"
      },
      "AFTRTransactionDetail-5": {
        "required": [
          "id",
          "idType",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "card": {
            "type": "object",
            "properties": {
              "posData": {
                "$ref": "#/components/schemas/PosData-4"
              }
            }
          },
          "fees": {
            "$ref": "#/components/schemas/Fees-3"
          },
          "idType": {
            "$ref": "#/components/schemas/IdType-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AFTRTransactionDetailAdditionalData"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount-1"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator-1"
          },
          "transactionCurrencyCode": {
            "description": "Use a 3-digit numeric or 3-character alpha ISO currency code for currency of the original transaction.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime-1"
          }
        },
        "description": "Transaction details for Account Funding Transaction Reversal"
      },
      "Amount-1": {
        "minimum": 0,
        "format": "double",
        "example": 12.34,
        "exampleSetFlag": true,
        "types": [
          "number"
        ]
      },
      "PaymentFacilitatorAddressLine": {
        "maxLength": 99,
        "minLength": 1,
        "type": "string",
        "description": "Street address of the payment facilitator",
        "example": "123 Payment St, Suite 100"
      },
      "ResponseCode": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "Code that defines the response to the authorization request",
        "example": "0"
      },
      "FundingStatus-4": {
        "type": "string",
        "description": "Indicates funding status of the payout transaction. This field is applicable for account payments only.\n",
        "enum": [
          "FUNDED",
          "NOT_FUNDED"
        ]
      },
      "FundingStatus-5": {
        "description": "Indicates funding status of the payout transaction. \nFUNDED - Indicates that the payout is fully funded and the allocated funds are available for settlement.\nNOT_FUNDED - Indicates that the payout has not yet been allocated any funds.\nFUNDED_AGING - Indicates that the payout has been allocated funds but the funds are still in the required ageing period.\n",
        "enum": [
          "FUNDED",
          "NOT_FUNDED",
          "FUNDED_AGING"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "FundingStatus-2": {
        "type": "string",
        "description": "Indicates funding status of the payout transaction. \n\nFUNDED - Indicates that the payout is fully funded and the allocated funds are available for settlement.\n\nNOT_FUNDED - Indicates that the payout has not yet been allocated any funds.\n\nFUNDED_AGING - Indicates that the payout has been allocated funds but the funds are still in the required aging period.\n",
        "enum": [
          "FUNDED",
          "NOT_FUNDED",
          "FUNDED_AGING"
        ]
      },
      "FundingStatus-3": {
        "type": "string",
        "description": "Indicates funding status of the payout transaction\n",
        "enum": [
          "FUNDED",
          "NOT_FUNDED"
        ]
      },
      "FundingStatus-1": {
        "type": "string",
        "description": "Indicates funding status of the payout transaction.\n\nFUNDED - Indicates that the payout is fully funded and the allocated funds are available for settlement.\n\nNOT_FUNDED - Indicates that the payout has not yet been allocated any funds.\n\nFUNDED_AGING - Indicates that the payout has been allocated funds but the funds are still in the required aging period.\n",
        "enum": [
          "FUNDED",
          "NOT_FUNDED",
          "FUNDED_AGING"
        ]
      },
      "FundingStatus-6": {
        "description": "Indicates funding status of the payout transaction.\n\nFUNDED - Indicates that the payout is fully funded and the allocated funds are available for settlement.\n\nNOT_FUNDED - Indicates that the payout has not yet been allocated any funds.\n\nFUNDED_AGING - Indicates that the payout has been allocated funds but the funds are still in the required aging period.\n",
        "enum": [
          "FUNDED",
          "NOT_FUNDED",
          "FUNDED_AGING"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "FundingStatus-7": {
        "type": "string",
        "description": "Indicates funding status of the payout transaction. \nFUNDED - Indicates that the payout is fully funded and the allocated funds are available for settlement.\nNOT_FUNDED - Indicates that the payout has not yet been allocated any funds.\nFUNDED_AGING - Indicates that the payout has been allocated funds but the funds are still in the required ageing period.\n",
        "enum": [
          "FUNDED",
          "NOT_FUNDED",
          "FUNDED_AGING"
        ]
      },
      "VerifyRecipientWalletRequest": {
        "required": [
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. Wallet\nValid values:\n- \"W\" Visa Direct Wallet\n",
            "enum": [
              "W"
            ]
          },
          "recipientDetail": {
            "required": [
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "CardAcceptorName": {
        "maxLength": 25,
        "type": "string",
        "description": "Name of the merchant or card acceptor",
        "example": "ACME Corporation"
      },
      "ValidPayoutWithNetworkResponse-6": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed. \n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          }
        }
      },
      "Name": {
        "maxLength": 30,
        "minLength": 1,
        "type": "string",
        "description": "Full name of the recipient"
      },
      "ValidPayoutWithNetworkResponse-7": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "networkInfo": {
            "type": "array",
            "description": "Validation based on different card networks. Applicable for Cards only",
            "items": {
              "type": "object",
              "properties": {
                "domestic": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "This is an Optional Field. Indicates domestic transaction is allowed. This is a single-character alphabetic code.<br>Y -  Cross border transfer allowed"
                },
                "fastFunds": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "This is an Optional Field. Indicates fastFunds transaction is allowed. This is a single-character alphabetic code.<br>Y -  Both Cross border transfer and domestic fast funds transfer allowed<br>X -  cross border fast funds transfer allowed<br>D -  domestic transfer allowed"
                },
                "networkId": {
                  "maxLength": 4,
                  "type": "integer",
                  "description": "This contains a code that identifies the network.<br>Refer to <a href=\"/request_response_codes#network_id_and_sharing_group_code\">Network Id</a>"
                },
                "issuerName": {
                  "maxLength": 240,
                  "type": "string",
                  "description": "Name of the recipient issuer."
                },
                "accountType": {
                  "maxLength": 8,
                  "minLength": 2,
                  "type": "string",
                  "description": "This is used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values. <br><br><b>DEBIT</b><br><b>CREDIT</b><br><br> Processing codes for Debit account Type <br>10-Saving account<br>20-Checking account<br><br>Processing codes for Credit account Type<br>30-Credit card account<br><br> If accountType is not provided for Combo Card, then response will display<br><br>10 or 20 for Combo Card  <br>30 for Combo Card"
                },
                "crossBorder": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "This is an Optional Field. Indicates crossBorder transaction is allowed. This is a single-character alphabetic code.<br>Y -  Cross border transfer allowed"
                },
                "cardTypeCode": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "The code of account funding source for the card, e.g. Credit, Debit, Prepaid, Charge, Deferred Debit.<br>Refer to <a href=\"/.  request_response_codes#card_type\">cardTypeCode</a>"
                },
                "cardSubTypeCode": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "This is an Optional Field. Indicates the type of prepaid card. This is a single-character alphabetic code.<br>R -  Reloadable.<br>N -  Non-reloadable."
                },
                "cardPlatformCode": {
                  "maxLength": 2,
                  "minLength": 1,
                  "type": "string",
                  "description": "Indicates the type of card. This is a 2-character alphabetic code.<br>BZ -  Business.<br>CN -  Consumer.<br>CO -  Commercial.<br>GV -  Government."
                },
                "issuerCountryCode": {
                  "maxLength": 3,
                  "minLength": 3,
                  "type": "integer",
                  "description": "Country code of the recipient issuer’s country.<br> Refer to <a href=\"/request_response_codes#iso_country_codes\">ISO Country Codes (numeric)</a>"
                },
                "prepaidSubtypeCode": {
                  "maxLength": 2,
                  "minLength": 2,
                  "type": "string",
                  "description": "Indicates the subtype code of prepaid product. This is a 2-character alphabetic code and below are the possible values.<br>GP = General Purpose <br>AC = Brazil Agriculture Maintenance Account/Custeio <br>AE = Brazil Agriculture Debit Account/Electron <br>AG = Brazil Agriculture <br>AI = Brazil Agriculture Investment Loan/Investimento <br>CG = Brazil Cargo <br>CS = Construction<br> <br>DS = Distribution<br> <br>EN = Large Market Enterprise <br>EX = Small Market Expenses<br> <br>LP = Visa Large-Purchase Advantage (VLPA) <br>MA = mVISA Agent H <br>MB = mVisa Merchant Payment <br>MG = Visa Mobile General <br>MX = Merchant Agent <br>TK = Service Advantage <br>VA = Brazil Food or Supermarket/Alimentacao Visa Vale <br>VF = Brazil Fuel/Flex Visa Vale <br>VM = Meal Voucher <br>VN = Visa Vale Food Voucher <br>VR = Brazil Food or Restaurant/Refeicao Visa Vale"
                },
                "accountCurrencyCode": {
                  "maxLength": 3,
                  "minLength": 3,
                  "type": "integer",
                  "description": "Indicates a currency code, use a 3-digit numeric currency code for the card billing currency of the PAN. Refer <a href='https://developer.visa.com/request_response_codes#iso_country_and_currency_codes'>ISO Codes</a>"
                },
                "billingCurrencyCode": {
                  "maxLength": 3,
                  "minLength": 3,
                  "type": "integer",
                  "description": "Use a 3-digit numeric currency code for the card billing currency of the PAN.<br>Refer to <a href=\"/request_response_codes#currency_codes\">ISO Codes</a>"
                },
                "pushFundsCrossBorderAuthApprovalInd": {
                  "maxLength": 16,
                  "minLength": 2,
                  "type": "string",
                  "description": "Indicates an auth approval rate for Cross border OCT of the issuer account range/BIN of the recipient card for the last three months. Below are the possible values.<br><br> READY<br> OPTIMIZED <br>NON-OPTIMIZED"
                }
              }
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed. \n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          }
        }
      },
      "TraExemptionIndicator": {
        "type": "string",
        "description": "TRA exemption indicator",
        "enum": [
          "true",
          "false"
        ]
      },
      "ValidPayoutWithNetworkResponse-4": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "nameMatch": {
            "$ref": "#/components/schemas/nameMatch-1"
          },
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "bankAccountName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account name i.e. account holder name as returned by the partner when nameMatch = ‘PARTIAL_MATCH’. Available for some corridors. Applicable only for Accounts. Future use – not yet available."
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed. Only applicable for Wallet Payouts.\n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-1"
              }
            ]
          }
        }
      },
      "ValidPayoutWithNetworkResponse-5": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed. Only applicable for Wallet Payouts. \n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          }
        }
      },
      "ValidPayoutWithNetworkResponse-2": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "networkInfo": {
            "type": "array",
            "description": "Validation based on different card networks. Applicable for Cards only",
            "items": {
              "type": "object",
              "properties": {
                "domestic": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "This is an Optional Field. Indicates domestic transaction is allowed. This is a single-character alphabetic code.<br>Y -  Cross border transfer allowed"
                },
                "fastFunds": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "This is an Optional Field. Indicates fastFunds transaction is allowed. This is a single-character alphabetic code.<br>Y -  Both Cross border transfer and domestic fast funds transfer allowed<br>X -  cross border fast funds transfer allowed<br>D -  domestic transfer allowed"
                },
                "networkId": {
                  "maxLength": 4,
                  "type": "integer",
                  "description": "This contains a code that identifies the network.<br>Refer to <a href=\"/request_response_codes#network_id_and_sharing_group_code\">Network Id</a>"
                },
                "issuerName": {
                  "maxLength": 240,
                  "type": "string",
                  "description": "Name of the recipient issuer."
                },
                "accountType": {
                  "maxLength": 8,
                  "minLength": 2,
                  "type": "string",
                  "description": "This is used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values. <br><br><b>DEBIT</b><br><b>CREDIT</b><br><br> Processing codes for Debit account Type <br>10-Saving account<br>20-Checking account<br><br>Processing codes for Credit account Type<br>30-Credit card account<br><br> If accountType is not provided for Combo Card, then response will display<br><br>10 or 20 for Combo Card  <br>30 for Combo Card"
                },
                "crossBorder": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "This is an Optional Field. Indicates crossBorder transaction is allowed. This is a single-character alphabetic code.<br>Y -  Cross border transfer allowed"
                },
                "cardTypeCode": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "The code of account funding source for the card, e.g. Credit, Debit, Prepaid, Charge, Deferred Debit.<br>Refer to <a href=\"/.  request_response_codes#card_type\">cardTypeCode</a>"
                },
                "cardSubTypeCode": {
                  "maxLength": 1,
                  "minLength": 1,
                  "type": "string",
                  "description": "This is an Optional Field. Indicates the type of prepaid card. This is a single-character alphabetic code.<br>R -  Reloadable.<br>N -  Non-reloadable."
                },
                "cardPlatformCode": {
                  "maxLength": 2,
                  "minLength": 1,
                  "type": "string",
                  "description": "Indicates the type of card. This is a 2-character alphabetic code.<br>BZ -  Business.<br>CN -  Consumer.<br>CO -  Commercial.<br>GV -  Government."
                },
                "issuerCountryCode": {
                  "maxLength": 3,
                  "minLength": 3,
                  "type": "integer",
                  "description": "Country code of the recipient issuer’s country.<br> Refer to <a href=\"/request_response_codes#iso_country_codes\">ISO Country Codes (numeric)</a>"
                },
                "prepaidSubtypeCode": {
                  "maxLength": 2,
                  "minLength": 2,
                  "type": "string",
                  "description": "Indicates the subtype code of prepaid product. This is a 2-character alphabetic code and below are the possible values.<br>GP = General Purpose <br>AC = Brazil Agriculture Maintenance Account/Custeio <br>AE = Brazil Agriculture Debit Account/Electron <br>AG = Brazil Agriculture <br>AI = Brazil Agriculture Investment Loan/Investimento <br>CG = Brazil Cargo <br>CS = Construction<br> <br>DS = Distribution<br> <br>EN = Large Market Enterprise <br>EX = Small Market Expenses<br> <br>LP = Visa Large-Purchase Advantage (VLPA) <br>MA = mVISA Agent H <br>MB = mVisa Merchant Payment <br>MG = Visa Mobile General <br>MX = Merchant Agent <br>TK = Service Advantage <br>VA = Brazil Food or Supermarket/Alimentacao Visa Vale <br>VF = Brazil Fuel/Flex Visa Vale <br>VM = Meal Voucher <br>VN = Visa Vale Food Voucher <br>VR = Brazil Food or Restaurant/Refeicao Visa Vale"
                },
                "accountCurrencyCode": {
                  "maxLength": 3,
                  "minLength": 3,
                  "type": "integer",
                  "description": "Indicates a currency code, use a 3-digit numeric currency code for the card billing currency of the PAN. Refer <a href='https://developer.visa.com/request_response_codes#iso_country_and_currency_codes'>ISO Codes</a>"
                },
                "billingCurrencyCode": {
                  "maxLength": 3,
                  "minLength": 3,
                  "type": "integer",
                  "description": "Use a 3-digit numeric currency code for the card billing currency of the PAN.<br>Refer to <a href=\"/request_response_codes#currency_codes\">ISO Codes</a>"
                },
                "pushFundsCrossBorderAuthApprovalInd": {
                  "maxLength": 16,
                  "minLength": 2,
                  "type": "string",
                  "description": "Indicates an auth approval rate for Cross border OCT of the issuer account range/BIN of the recipient card for the last three months. Below are the possible values.<br><br> READY<br> OPTIMIZED <br>NON-OPTIMIZED"
                }
              }
            }
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed. \n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          }
        }
      },
      "ValidPayoutWithNetworkResponse-3": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed. \n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          }
        }
      },
      "PreviousStatus": {
        "type": "string",
        "description": "Indicates the currency's previous status, if applicable. Only two values are allowed <br />\nENABLED – payouts in this currency were allowed. <br />\nDISABLED – payouts in this currency were not allowed.\n",
        "example": "ENABLED",
        "enum": [
          "ENABLED",
          "DISABLED"
        ]
      },
      "ValidPayoutWithNetworkResponse-1": {
        "required": [
          "validationResultCode"
        ],
        "type": "object",
        "properties": {
          "nameMatch": {
            "$ref": "#/components/schemas/nameMatch"
          },
          "currencyCodes": {
            "type": "array",
            "description": "List of currency codes accepted by the specific requested account which is verified by the Account verification services.\n",
            "example": [
              "USD",
              "GBP",
              "EUR"
            ],
            "items": {
              "$ref": "#/components/schemas/AlphaCurrencyCode"
            }
          },
          "verificationId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Unique verification identifier.",
            "example": "5003f6a0-2c44-11b2-aa57-47378ae53313"
          },
          "bankAccountName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account name i.e. account holder name as returned by the partner when nameMatch = ‘PARTIAL_MATCH’. Available for some corridors. Applicable only for Accounts."
          },
          "expectedPostingDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExpectedPostingDateForValidate-1"
              }
            ]
          },
          "validationResultCode": {
            "type": "string",
            "description": "- VALID_WITH_NETWORK - Both Visa's and partner network's validations succeed.\n",
            "enum": [
              "VALID_WITH_NETWORK"
            ]
          },
          "bankAccountNameTranslation": {
            "type": "string",
            "description": "Account HolderName Translated from the source language to english.\n",
            "example": "Wang Li"
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "SettlementServiceIndicator-1": {
        "maximum": 9,
        "minimum": 0,
        "type": "number",
        "description": "This flag enables the originator to request for a particular settlement service to be used for settling the transaction. Format number [ 0 .. 9 ]<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>0 – International Settlement</li>\n  <li>9 – VIP to decide</li>\n  <li>8 – National Settlement</li>\n</ul>\n<b>Note:</b> The default value is 9. This field is only relevant for specific countries where the acquirer has to select 8 in order to settle in the national net settlement service.",
        "example": 9
      },
      "AFTResponseTransactionDetail": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "status",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "approvedAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "memberComments": {
            "$ref": "#/components/schemas/MemberComments"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/AFTNetworkResponse"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/AFTServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdenifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          },
          "masterCardElectronicCommerceIndicators": {
            "$ref": "#/components/schemas/MasterCardElectronicCommerceIndicators"
          },
          "cpsAuthorizationCharacteristicIndicator": {
            "$ref": "#/components/schemas/CPSAuthorizationCharacteristicIndicator"
          }
        }
      },
      "PayoutId-2": {
        "maxLength": 50,
        "minLength": 1,
        "description": "This is a globally unique identifier generated by Visa for a payout transaction\n\nISO20022 field name: Transaction Information And Status - Additional Remittance Information\n",
        "example": "5003f6a0-2c44-11b2-aa57-47378ae53313_1",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "PayoutId-1": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "Unique identifier for the payout transaction"
      },
      "AccountVerificationRequest-1": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "type": "object",
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths) ISO20022 field name: \"Creditor Private Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "type": "string",
            "description": "The ID of the initiating party.",
            "example": "123456"
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "AccountVerificationRequest-3": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-5"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName-1"
                  }
                ],
                "exampleSetFlag": true
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: \"Creditor Private Identification Code\"\n",
                    "exampleSetFlag": false
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-7"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          },
          "initiatingPartyId": {
            "description": "The ID of the initiating party.",
            "example": "123456",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RecipientAccountPayoutAddress": {
        "type": "object",
        "properties": {
          "city": {
            "description": "Recipient address city\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Town Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/City"
              }
            ]
          },
          "state": {
            "description": "Recipient address state or province\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country Sub-division\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Province"
              }
            ]
          },
          "country": {
            "description": "Recipient address country\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Country\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "postalCode": {
            "description": "Recipient address postal code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Postal Code\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PostalCode"
              }
            ]
          },
          "addressLine1": {
            "description": "Recipient address line 1\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Street Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine1"
              }
            ]
          },
          "addressLine2": {
            "description": "Recipient address line 2\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Address Floor\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressLine2"
              }
            ]
          }
        }
      },
      "AccountWalletRecipientIndividual": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/AccountWalletRecipientPayoutAddress"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor First Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth-2"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          }
        }
      },
      "AccountVerificationRequest-2": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/VerifyRecipientBank"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName-1"
                  }
                ],
                "exampleSetFlag": true
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: \"Creditor Private Identification Code\"\n",
                    "exampleSetFlag": false
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-6"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AFTRNetworkResponse-11": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/AFTRCardResponseTokenData"
          },
          "senderIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "AccountVerificationRequest-4": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "type": "object",
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/VerifyRecipientBank-1"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: \"Creditor Private Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-8"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference"
          }
        }
      },
      "AccountBalanceWithTimestamp-4": {
        "required": [
          "accountId"
        ],
        "properties": {
          "accountId": {
            "$ref": "#/components/schemas/AccountId-1"
          },
          "balanceTimestamp": {
            "$ref": "#/components/schemas/TimestampType-1"
          },
          "lastTransactionTimestamp": {
            "description": "The timestamp of the last money movement on the client's account. \n\nThis is a valid ISO 8601 timestamp, such as YYYY-MM-DDThh:mm:ss.sss±hh:mm.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType-1"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountBalanceWithTimestamp-5": {
        "required": [
          "accountId"
        ],
        "properties": {
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId-1"
              }
            ],
            "exampleSetFlag": false
          },
          "balanceTimestamp": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType-1"
              }
            ],
            "exampleSetFlag": false
          },
          "lastTransactionTimestamp": {
            "description": "The timestamp of the last money movement on the client's account. \n\nThis is a valid ISO 8601 timestamp, such as YYYY-MM-DDThh:mm:ss.sss±hh:mm.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType-1"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountWalletSenderIdentificationList": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountWalletIdType-1"
                }
              ]
            },
            "idNumber": {
              "description": "Sender identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Sender identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "AccountBalanceWithTimestamp-6": {
        "required": [
          "accountId"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "$ref": "#/components/schemas/AccountId"
          },
          "balanceTimestamp": {
            "$ref": "#/components/schemas/TimestampType"
          },
          "lastTransactionTimestamp": {
            "description": "The timestamp of the last money movement on the client's account. \n\nThis is a valid ISO 8601 timestamp, such as YYYY-MM-DDThh:mm:ss.sss±hh:mm.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardPayoutValidateRequest-1": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-1"
          }
        ]
      },
      "CardPayoutValidateRequest-2": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-2"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-3"
          }
        ]
      },
      "AccountBalanceWithTimestamp-1": {
        "required": [
          "accountId"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "balanceTimestamp": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "lastTransactionTimestamp": {
            "description": "The timestamp of the last money movement on the client's account. \n\nThis is a valid ISO 8601 timestamp, such as YYYY-MM-DDThh:mm:ss.sss±hh:mm.\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardPayoutValidateRequest-3": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-3"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-4"
          }
        ]
      },
      "CardPayoutValidateRequest-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-4"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-5"
          }
        ]
      },
      "AccountBalanceWithTimestamp-2": {
        "required": [
          "balance"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "balanceTimestamp": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "lastTransactionTimestamp": {
            "description": "The timestamp of the last money movement on the client's account. \n\nThis is a valid ISO 8601 timestamp, such as YYYY-MM-DDThh:mm:ss.sss±hh:mm.                  \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardPayoutValidateRequest-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-5"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-6"
          }
        ]
      },
      "AccountBalanceWithTimestamp-3": {
        "required": [
          "accountId",
          "balance"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountId"
              }
            ]
          },
          "balanceTimestamp": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          },
          "lastTransactionTimestamp": {
            "description": "The timestamp of the last money movement on the client's account. \n\nThis is a valid ISO 8601 timestamp, such as YYYY-MM-DDThh:mm:ss.sss±hh:mm.                  \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "CardPayoutValidateRequest-6": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-6"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-7"
          }
        ]
      },
      "CardPayoutValidateRequest-7": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-7"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-8"
          }
        ]
      },
      "CardPayoutValidateRequest-8": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-8"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-9"
          }
        ]
      },
      "CardPayoutValidateRequest-9": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-9"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-10"
          }
        ]
      },
      "VerificationPosData": {
        "type": "object",
        "properties": {
          "panEntryMode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "2-digit code that identifies the method used to enter the cardholder account number",
            "example": "01",
            "default": "01"
          },
          "motoECIIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Identifies the level of security used in an electronic commerce transaction",
            "example": "7"
          },
          "posConditionCode": {
            "type": "string",
            "description": "Code identifying transaction conditions at the point of sale or point of service",
            "example": "51",
            "default": "51"
          },
          "pointOfServiceCapability": {
            "type": "object",
            "properties": {
              "terminalType": {
                "type": "string",
                "description": "1-digit code identifies the basic POS electronic terminal category",
                "example": "1"
              },
              "terminalEntryCapability": {
                "type": "string",
                "description": "Recommended value for card not present is 5",
                "example": "5",
                "default": "5"
              }
            },
            "description": "For CardPresent Transactions, this field is required"
          },
          "specialConditionIndicatorMerchant": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Cryptocurrency indicator with the value of “7” can be used to identify the purchase of cryptocurrency, thereby providing greater visibility to the issuers.\n1 – Purchase of Central Bank Digital Currency (CBDC) or Tokenized Deposits\n2 – Purchase of Stablecoin (fiat-backed)\n3 – Purchase of Blockchain Native Token/Coin\n4 – Purchase of Non-Fungible Token (NFT)\n7* - Purchase of Cryptocurrency\n",
            "example": "7"
          }
        },
        "description": "Point of Service data for Verification check"
      },
      "ValidatePayoutWalletOnlyRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ValidateWalletTransactionDetail-7"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-10"
          }
        ],
        "exampleSetFlag": false
      },
      "ValidatePayoutWalletOnlyRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/ValidateWalletTransactionDetail-4"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-9"
          }
        ],
        "exampleSetFlag": false
      },
      "RecipientMiddleName": {
        "maxLength": 35,
        "minLength": 2,
        "type": "string",
        "description": "Recipient middle name",
        "example": "Marie"
      },
      "GivPreviouslyUpdatedFlag-1": {
        "type": "boolean",
        "description": "This field carries a boolean flag to identify the GivPreviouslyUpdated state. Possible values are true or false\n"
      },
      "TransactionDateTime-1": {
        "type": "string",
        "description": "Date and time of the transaction. Represents the timestamp when the request is submitted to VisaNet for processing. Format ISO 8601 format: YYYY-MM-DDTHH:MM:SS.SSSZ Includes date, time, milliseconds, and UTC indicator.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must follow ISO 8601 standard with UTC indicator (Z).</li>\n  <li>Must represent a valid date-time value.</li>\n  <li>Cannot be in the future relative to submission time.</li>\n</ul>",
        "format": "date-time",
        "example": "2018-11-09T22:52:46Z"
      },
      "LocalSchemeTransactionId": {
        "maxLength": 70,
        "minLength": 1,
        "type": "string",
        "description": "Optional.\nApplicable for statuses PAYMENT_SENT, PAYMENT_DELIVERED, DELIVERED_TO_SCHEME and DELIVERED_TO_RECIPIENT_BANK, when available.\n"
      },
      "GivPreviouslyUpdatedFlag-2": {
        "type": "string",
        "description": "Specifies if the Guaranteed Interchange Value (GIV) was previously updated for the transaction.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>Y</li>\n  <li>N</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Field is conditional based on GIV processing.</li>\n</ul>",
        "example": "N"
      },
      "OCTTransactionDetail-1": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "description": "3-character alpha currency code of the transaction as expressed in the amount field. This can be either:<ul><li>The originator's chosen currency for the transaction OR</li><li>The recipient's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode.<br><b>*Note</b>: This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "EligibilityRequestData": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "type": "object",
            "properties": {
              "acquiringBin": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "Bank Identification Number of the acquirer",
                "example": "123"
              },
              "acquirerCountryCode": {
                "maximum": 999,
                "minimum": 1,
                "type": "integer",
                "description": "ISO numeric country code for the acquirer",
                "example": 840
              }
            },
            "description": "Originator details for eligibility check"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId"
            ],
            "type": "object",
            "properties": {
              "card": {
                "required": [
                  "accountNumber"
                ],
                "type": "object",
                "properties": {
                  "accountNumber": {
                    "maxLength": 19,
                    "minLength": 13,
                    "type": "string",
                    "description": "The primary account number for which eligibility is being checked",
                    "example": "4111111111111111"
                  },
                  "accountNumberType": {
                    "type": "string",
                    "description": "Type of account number being submitted",
                    "example": "DEFAULT",
                    "enum": [
                      "DEFAULT"
                    ]
                  }
                },
                "description": "Card information to check eligibility for"
              },
              "criteria": {
                "type": "array",
                "description": "Criteria for eligibility check",
                "items": {
                  "type": "object",
                  "properties": {
                    "accountType": {
                      "type": "string",
                      "description": "Type of the account",
                      "example": "CREDIT",
                      "enum": [
                        "DEBIT",
                        "CREDIT"
                      ]
                    },
                    "routingNetworkId": {
                      "maxLength": 30,
                      "minLength": 1,
                      "type": "string",
                      "description": "Identifier for the routing network",
                      "example": "123"
                    }
                  }
                }
              },
              "clientReferenceId": {
                "maxLength": 12,
                "minLength": 12,
                "type": "string",
                "description": "Reference identifier to tie multiple API calls with a single funds transfer transaction"
              },
              "initiatingPartyId": {
                "type": "integer",
                "description": "A unique identifier assigned by the initiating party for the API consumer",
                "format": "int64",
                "example": 987654321
              },
              "paymentCredentialReference": {
                "required": [
                  "type",
                  "value"
                ],
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "description": "Type of payment instrument.",
                    "example": "PCI_TOKEN_REFID",
                    "enum": [
                      "PCI_TOKEN_REFID",
                      "PHONE",
                      "EMAIL",
                      "DIRECTORY_ALIASID",
                      "PAYMENT_CREDENTIAL_ID"
                    ]
                  },
                  "value": {
                    "maxLength": 128,
                    "minLength": 1,
                    "type": "string",
                    "description": "The value of the payment instrument. For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"requestorId\".<br> For \"PAYMENT_CREDENTIAL_ID\" length is 1-36 characters.<br> For \"PHONE\", \"EMAIL\", \"DIRECTORY_ALIASID\", length is 1-128 characters. <br> <br>If phone number is used for alias, this should be provided in accordance with ITU-T E.164 (2010) number structure. Please note that in the E.164 format, the '+' sign is not included. Below are some examples of phone numbers with different country codes - <br><table><thead><tr><th>Country</th><th>Country Code</th><th>Examples</th></tr></thead><tbody><tr><td>United States</td><td>1</td><td>1650xxxxxxx</td></tr><tr><td>Ukraine</td><td>380</td><td>38067xxxxxxx</td></tr><tr><td>Belarus</td><td>375</td><td>37529xxxxxxx</td></tr><tr><td>Kazakhstan</td><td>7</td><td>7701xxxxxxx</td></tr><tr><td>United Kingdom</td><td>44</td><td>4478xxxxxxxx</td></tr><tr><td>Singapore</td><td>65</td><td>659xxxxxxx</td></tr><tr><td>Hong Kong</td><td>852</td><td>8529xxxxxxx</td></tr><tr><td>Kenya</td><td>254</td><td>254701xxxxxx</td></tr></tbody></table>\"",
                    "example": "TOKEN123456789"
                  },
                  "requestorId": {
                    "maxLength": 50,
                    "minLength": 1,
                    "type": "string",
                    "description": "<b>Conditional</b><br><br> Unique Merchant Identification assigned by Token Service Provider. Only required if type is PCI_TOKEN_REFID.",
                    "example": "MERCHANT123"
                  }
                },
                "description": "External reference to a payment credential"
              }
            },
            "description": "Transaction details for eligibility check"
          }
        },
        "description": "Request data for checking card eligibility\n<b>Conditional</b>\nOnly one of 'card' and 'paymentCredentialReference' is provided in a request.\n"
      },
      "OCTTransactionDetail-3": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData-2"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "OCTTransactionDetail-2": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "description": "3-character alpha currency code of the transaction as expressed in the amount field. This can be either:<ul><li>The originator's chosen currency for the transaction OR</li><li>The recipient's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode.<br><b>*Note</b>: This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "OCTTransactionDetail-5": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData-2"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "OCTTransactionDetail-4": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "OCTTransactionDetail-7": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData-2"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-2"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "OCTTransactionDetail-6": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData-1"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalData-1"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-1"
          },
          "routingNetworkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "OCTTransactionDetail-9": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "localTransactionDateTime",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "fees": {
            "type": "object",
            "properties": {
              "surcharge": {
                "$ref": "#/components/schemas/Surcharge-1"
              }
            }
          },
          "posData": {
            "$ref": "#/components/schemas/OCTTransactionPosData-3"
          },
          "additionalData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OCTTransactionDetailAdditionalData"
            }
          },
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayment-4"
          },
          "routingNetworkId": {
            "description": "Network identifier on which to process the transaction. Refer to <a href=\"/request_response_codes#network_id_and_sharing_group_code\">Network ID</a><br><br>\nSupported only in:\n<ul>\n  <li>US for domestic transactions.</li>\n  <li>Cross border transactions involving UnionPay International Money Express.</li>\n</ul>",
            "example": 1,
            "allOf": [
              {
                "$ref": "#/components/schemas/NetworkId-2"
              }
            ]
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-3"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "messageReasonCode": {
            "$ref": "#/components/schemas/MessageReasonCode-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount-1"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator-1"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SenderSourceOfFunds-1"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-1"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType-1"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier-1"
          },
          "transactionCurrencyCode": {
            "description": "3-digit numeric or 3-character alpha ISO currency code of the transaction as expressed in the amount field. This can be either:<ul><li>The originator's chosen currency for the transaction OR</li><li>The recipient's card currency (refer to the billingCurrencyCode obtained from the Eligibility Check for Card API)*</li></ul>Adjust amount accordingly based on chosen transactionCurrencyCode.<br><b>*Note</b>: This currency may not always be the local currency code of the recipient.<br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a>",
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionCurrencyCode"
              }
            ]
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "localTransactionDateTime": {
            "$ref": "#/components/schemas/LocalTransactionDateTime-1"
          },
          "optionalResponseParameters": {
            "maxLength": 400,
            "type": "string",
            "description": "Comma-separated list of optional response parameters to include in the response"
          },
          "settlementServiceIndicator": {
            "$ref": "#/components/schemas/SettlementServiceIndicator-1"
          }
        },
        "description": "Transaction details for Original Credit Transaction"
      },
      "OCTResponseCardAcceptor": {
        "type": "object",
        "properties": {
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        }
      },
      "RemoteCommerceAcceptorIdentifier-1": {
        "maxLength": 150,
        "minLength": 1,
        "type": "string",
        "description": "Remote commerce acceptor identifier. This field contains a merchant identifier encoded as Base64. For example, website URL or reverse domain name.",
        "example": "RCA123456789"
      },
      "AFTRResponseData": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/AFTRResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/AFTRResponseTransactionDetail"
          }
        },
        "description": "Account Funding Transaction Reversal (AFTR) response data structure"
      },
      "CardPaymentFacilitator-1": {
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 11,
            "minLength": 1,
            "type": "string",
            "description": "Marketplace ID or Payment Facilitator's ID. This field is conditionally required when a payment facilitator is involved.\n"
          },
          "name": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "Payment facilitator name in OCTs. This field is conditionally required when a payment facilitator is involved.\n"
          },
          "subMerchantId": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved.\n"
          },
          "independentSalesOrganizationID": {
            "maxLength": 11,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.    \n"
          }
        }
      },
      "QueryNetworkResponse-4": {
        "required": [
          "actionCode",
          "approvalCode"
        ],
        "type": "object",
        "properties": {
          "posData": {
            "type": "object",
            "properties": {
              "motoECIIndicator": {
                "maxLength": 1,
                "type": "string",
                "description": "Identifies the level of security used in an electronic commerce transaction over an open network (for example, the Internet) or the type of mail or telephone order. Acquirers supply indicator values, which V.I.P. forwards in requests and advices to issuers that have successfully tested to receive them."
              }
            }
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-2"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode-3"
          },
          "last4ofPAN": {
            "maxLength": 4,
            "minLength": 4,
            "type": "integer",
            "description": "This field contains the last four digits of the cardholder primary account number (PAN)"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-4"
          },
          "chipCardData": {
            "maxLength": 510,
            "minLength": 2,
            "type": "string",
            "description": "A blob containing the Chip card data in TLV format",
            "example": "8201495F2A0201245F34010182021C008407A0000000031010950580000000009A031102249B0268009C01009F02060000000000009F03060000000000009F0607A00000000310109F0802008C9F0902008C9F100706010A039000009F1A0201249F2608423158936ED6C38F9F2701809F3303E0B0C89F34034103029F3501229F360200019F3704ACAC66E89F5800DF0100DF0200DF0400"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator-1"
          },
          "persistentFX": {
            "type": "object",
            "properties": {
              "exchangeRate": {
                "type": "number",
                "description": "PFX Exchange Rate decimal",
                "format": "bigDecimal"
              },
              "visaRateTableId": {
                "maxLength": 5,
                "minLength": 1,
                "type": "string",
                "description": "Rate table Id of the PFX exchange rate"
              },
              "visaRateProvider": {
                "maxLength": 70,
                "minLength": 1,
                "type": "string",
                "description": "Provider of the PFX exchange rate"
              }
            }
          },
          "dcapIndicator": {
            "$ref": "#/components/schemas/DcapIndicator"
          },
          "memberComments": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "This field can be optionally used to send and receive comments by service providers. Issuers can optionally include new text in this field in the response. If the issuer does not include this field, Visa will inject the value from the request in the response and send it back to the service provider."
          },
          "prepaidBalance": {
            "type": "string",
            "description": "Min Inclusive: -999999999.999<br><br>Max Inclusive: 999999999.999<br><br>Note: Applicable only for Top Up Transactions"
          },
          "supplementalData": {
            "type": "object",
            "properties": {
              "dafIndicator": {
                "maxLength": 5,
                "type": "string",
                "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.<br/>Possible values are true or false"
              }
            }
          },
          "customerReference": {
            "maxLength": 17,
            "type": "string",
            "description": "<b>Conditional</b><br><br>This field contains a value that identifies the customer."
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode-1"
          },
          "responseReasonCode": {
            "maxLength": 4,
            "minLength": 1,
            "type": "string",
            "description": "This field contains the merchant advice code value received from Mastercard authorization response messages."
          },
          "riskAssessmentResults": {
            "type": "object",
            "properties": {
              "exemptionReasonCode": {
                "type": "array",
                "description": "One or more instances of reason codes that explain why an exemption was not honored.<br><br>Valid Values :<br>8A01 = Merchant not participating in Visa Delegated Authentication Program<br>8A02 = Issuer not participating in Visa Delegated Authentication Program<br>8A04 = Indeterminate or invalid issuer response<br>8A06 = Did not meet exemption criteria (Visa determined)<br>8A07 = VMID invalid for service<br>8A08 = CAVV invalid value<br>8A76 = Did not meet delegation criteria (Issuer supplied)<br>8473 = Cardholder has not trusted the merchant (issuer supplied)<br>8474 = Did not meet the exemption criteria (issuer supplied)<br>8976 = Did not meet exemption criteria (issuer supplied)<br><br>This field is present in API response only if any of the SCA exemptions were claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34, Dataset ID 4A- Tag 8C.",
                "items": {
                  "maxLength": 4,
                  "minLength": 4,
                  "type": "string"
                }
              },
              "scpExemptionIndicator": {
                "type": "string",
                "description": "Secure Corporate Payment (SCP) Indicator.<br><br>Valid Values :<br>HONORED - Secure corporate payment exemption validated/honored<br>NOT_HONORED-Secure corporate payment exemption failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 88."
              },
              "traExemptionIndicator": {
                "type": "string",
                "description": "Transaction Risk Analysis (TRA) Exemption Indicator.<br><br>Valid Values :<br>HONORED - Transaction risk analysis exemption validated/honored<br>NOT_HONORED - Transaction risk analysis exemption failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 89."
              },
              "lowValueExemptionIndicator": {
                "type": "string",
                "description": "This field is present in API response only if the following conditions are met. <br> <br>-  optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request. <br><br>-  Low Value exemption was claimed in the acquirer request (OR) Issuer chooses to approve the transaction as the amount was below the issuer set low value and velocity counts limits<br><br>Valid Values :<br>HONORED - Low value exemption validated/honored<br>NOT_HONORED - Low value exemption failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 87."
              },
              "delegatedAuthenticationIndicator": {
                "type": "string",
                "description": "Delegated Authentication Indicator.<br><br>Valid Values :<br>HONORED - Delegated authentication request validated/honored<br>NOT_HONORED - Delegated authentication request failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 8A."
              },
              "trustedMerchantExemptionIndicator": {
                "type": "string",
                "description": "Trusted Merchant Exemption Indicator.<br><br>Valid Values :<br>HONORED - Trusted merchant exemption validated/honored<br>NOT_HONORED - Trusted merchant exemption failed validation/not honored<br><br>This field is present in API response only if the exemption was claimed and optionalResponseParameters field was set to include \"RISKASSESSMENTDATA\" as one of the comma separated values in the API request.<br><br>This field maps to ISO8583 Field 34 – Dataset ID 4A -Tag 84."
              }
            },
            "description": "This object is present in the response only if the issuer supports SCA exemptions."
          },
          "prepaidBalanceCurrency": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Currency code for prepaid balance"
          },
          "reimbursementAttribute": {
            "maxLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>If AFT transaction has qualified for CPS then this field contains a code that identifies the applicable interchange reimbursement fee. Possible values are : A (Payment Service Interchange Reimbursement Fee (PSIRF) U.S.).<br>Please reach out to your Visa representative for details."
          },
          "cardVerificationResults": {
            "type": "object",
            "properties": {
              "cavvResultCode": {
                "$ref": "#/components/schemas/CavvResultCode-1"
              },
              "cvv2ResultCode": {
                "$ref": "#/components/schemas/Cvv2ResultCode-1"
              }
            }
          },
          "cardAuthenticationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "A Visa-defined code indicating Online Card Authentication Method results. Refer to cardAuthenticationResults"
          },
          "integratedCircuitCardData": {
            "maxLength": 510,
            "minLength": 2,
            "type": "string",
            "description": "A blob containing the Chip card data in TLV format.",
            "example": "8201495F2A0201245F34010182021C008407A0000000031010950580000000009A031102249B0268009C01009F02060000000000009F03060000000000009F0607A00000000310109F0802008C9F0902008C9F100706010A039000009F1A0201249F2608423158936ED6C38F9F2701809F3303E0B0C89F34034103029F3501229F360200019F3704ACAC66E89F5800DF0100DF0200DF0400"
          },
          "merchantVerificationValue": {
            "required": [
              "mvvAcquirerAssigned",
              "mvvVisaAssigned"
            ],
            "type": "object",
            "properties": {
              "mvvVisaAssigned": {
                "maxLength": 6,
                "minLength": 6,
                "type": "string",
                "description": "Visa assigned MVV value. E.g. 0A45AF"
              },
              "mvvAcquirerAssigned": {
                "maxLength": 4,
                "minLength": 4,
                "type": "string",
                "description": "Visa assists the acquirer in assigning the last four. E.g. 98FC"
              }
            },
            "description": "Merchant Verification Value(MVV) is used to identify merchants that participate in a variety of programs. The MVV is unique to the merchant."
          },
          "transactionLinkIdentifier": {
            "maxLength": 36,
            "minLength": 1,
            "type": "string",
            "description": "Transaction Link Identifier returned from other networks like MasterCard and Pulse"
          },
          "addressVerificationResults": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Results of the Address Verification Service (AVS) validation for the Primary Account Number. <br>Refer to addressVerificationResults",
            "example": "string"
          },
          "senderIdentificationNumberIndividual": {
            "maxLength": 13,
            "type": "string",
            "description": "<b>Conditional</b><br><br>This field contains the identification number issued to the individual by the government or an authorized national entity. For Argentina domestic purchase transactions this field contains the customer's VAT registration number for tax identification."
          },
          "recipientIdentificationNumberBusiness": {
            "maxLength": 20,
            "type": "string",
            "description": "Unique identifier for the recipient business. This is used to identify the business recipient in the system."
          },
          "masterCardElectronicCommerceIndicators": {
            "maxLength": 19,
            "minLength": 7,
            "type": "string",
            "description": "This field contains the security-level indicator for Mastercard issuer-authenticated transactions."
          },
          "recipientIdentificationNumberIndividual": {
            "maxLength": 13,
            "type": "string",
            "description": "Unique identifier for the recipient individual. This is used to identify the recipient in the system."
          },
          "cpsAuthorizationCharacteristicsIndicator": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br>Request for CPS authorization. If present, a valid value is required. Spaces or special characters are not allowed. Possible values are : Y (Transaction requests participation)<br><br><b>Note: </b>Supported only in US for CPS (Custom Payment Service).<br><br>This field is required for the transaction to qualify for CPS qualified Interchange rates and to avoid the Transaction Integrity Fee.<br><br>Please reach out to your Visa representative for details."
          }
        }
      },
      "QueryNetworkResponse-2": {
        "required": [
          "actionCode",
          "approvalCode"
        ],
        "type": "object",
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-3"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "cardVerificationResults": {
            "type": "object",
            "properties": {
              "cavvResultCode": {
                "$ref": "#/components/schemas/CavvResultCode"
              },
              "cvv2ResultCode": {
                "$ref": "#/components/schemas/Cvv2ResultCode"
              }
            }
          }
        }
      },
      "QueryNetworkResponse-1": {
        "required": [
          "actionCode",
          "approvalCode"
        ],
        "type": "object",
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-2"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "cardVerificationResults": {
            "type": "object",
            "properties": {
              "cavvResultCode": {
                "$ref": "#/components/schemas/CavvResultCode"
              },
              "cvv2ResultCode": {
                "$ref": "#/components/schemas/Cvv2ResultCode"
              }
            }
          }
        }
      },
      "OCTResponseData": {
        "required": [
          "originatorDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTResponseOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTResponseTransactionDetail"
          }
        },
        "description": "Original Credit Transaction (OCT) response data structure"
      },
      "ValidatePayoutCardRequest": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest"
          }
        ]
      },
      "ReplacementCardExpirationDate": {
        "maxLength": 7,
        "minLength": 7,
        "type": "string",
        "description": "Expiration date of the replacement card",
        "example": "2025-12"
      },
      "AdditionalTokenRespInfo-1": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "This field will contain a value used to identify transactions eligible for token services.\n\nValid value:\n\n1 - Token program.  \n"
      },
      "FlexibleAccountFrozen-1": {
        "description": "Indicates if the flexible account is frozen.",
        "exampleSetFlag": false,
        "types": [
          "boolean"
        ]
      },
      "DigitalAssetSenderIsIndividual-1": {
        "required": [
          "firstName",
          "lastName",
          "type"
        ],
        "properties": {
          "type": {
            "description": "Identifies the type of sender - \"I\" for Individual\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "lastName": {
            "description": "Sender last name. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName-2"
              }
            ],
            "exampleSetFlag": false
          },
          "firstName": {
            "description": "Sender first name(s), include all first (given) names. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\" <br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false
      },
      "RemoteCommerceAcceptorIdentifier": {
        "maxLength": 150,
        "minLength": 1,
        "type": "string",
        "description": "Remote commerce acceptor identifier",
        "example": "RCA123456789"
      },
      "ArgentinaNationalServiceData-1": {
        "required": [
          "country"
        ],
        "type": "object",
        "properties": {
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO 3166-1 alpha-3 country code for national service data",
            "example": "MEX"
          },
          "reimbursementFee": {
            "$ref": "#/components/schemas/ReimbursementFee"
          },
          "reimbursementFeeTax": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "DigitalAssetRecipientTransactorDetailWithID-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsIndividual-10"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetRecipientIsCompany-5"
          }
        ]
      },
      "OCTResponseCardAcceptor-1": {
        "type": "object",
        "properties": {
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-2"
          }
        }
      },
      "ValidatePayoutWalletOnlyRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "$ref": "#/components/schemas/ValidateWalletTransactionDetail-8"
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutToWalletRequest-11"
          }
        ]
      },
      "ServiceLocationCountry-1": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nThis field contains the 3 character alpha ISO country code of the country where the cardholder received the services. This field is required for all MasterCard transactions.<br><br>\n<b>Format:</b><br>\n<ul>\n  <li>Allowed Characters: Alphabetic only. Refer to ISO Codes.</li>\n</ul>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must comply with ISO 3166-1 alpha-3 standard.</li>\n  <li>Ensure the country matches the registered service location.</li>\n  <li>This field is required for all MasterCard transactions.</li>\n</ul>",
        "example": "USA"
      },
      "QueryNetworkResponse-9": {
        "required": [
          "actionCode",
          "approvalCode"
        ],
        "type": "object",
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode"
          },
          "dafIndicator": {
            "$ref": "#/components/schemas/DafIndicator"
          },
          "originalActionCode": {
            "$ref": "#/components/schemas/OriginalActionCode"
          },
          "cardVerificationResults": {
            "type": "object",
            "properties": {
              "cavvResultCode": {
                "$ref": "#/components/schemas/CavvResultCode"
              },
              "cvv2ResultCode": {
                "$ref": "#/components/schemas/Cvv2ResultCode"
              }
            }
          }
        }
      },
      "NotCondition": {
        "required": [
          "id",
          "not"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "It defines an unique 'id' value of a condition"
          },
          "not": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/BooleanExpression"
              },
              {
                "$ref": "#/components/schemas/ConditionById"
              }
            ]
          }
        }
      },
      "DigitalAssetQuerySuccessResponse-4": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/TransactionStatus-5"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-5"
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-5"
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-4"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType-1"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail-1"
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "TransactionDateTime": {
        "type": "string",
        "description": "Date and time of transaction",
        "format": "date-time",
        "example": "2023-06-15T10:30:00Z"
      },
      "DigitalAssetQuerySuccessResponse-3": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus"
                  }
                ]
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail"
              }
            }
          }
        }
      },
      "DigitalAssetQuerySuccessResponse-2": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-2"
                  }
                ]
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail"
              }
            }
          }
        }
      },
      "OCTOriginatorDetailAdditionalData-1": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardPartnerIdCode<br><br><b>Conditional.</b><br><br>This field identifies a specific partnership agreement, generally between specific acceptors and issuers. may be used for transactions on accounts issued under co-branding agreements when one of the co-branding partners originates the transaction.<br><br>This field is conditionally required for all MasterCard transactions."
              },
              "value": {
                "maxLength": 8,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardIndependentSalesOrganizationId<br><br><b>Conditional.</b><br><br>This field contains the \"Company ID\" that is assigned during the time of registration with Mastercard Connect as a service provider and must be provided by the acquirer.<br><br>This field is conditionally required for all MasterCard transactions."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardSubMerchantId<br><br>Sub-Merchant ID containing the sponsored merchant ID. This field is conditionally required when a payment facilitator is involved and for all MasterCard transactions."
              },
              "value": {
                "maxLength": 15,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "masterCardMerchantPaymentGatewayId<br><br>This field contains merchant payment gateway ID assigned by Mastercard, provided by the acquirer when a registered merchant payment gateway service provider participates in the transaction. Value is right-justified and zero-filled."
              },
              "value": {
                "maxLength": 11,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "merchantPseudoAbaNumber<br><br>This is a number that uniquely identifies the originator when they sign up to send Push Payment Gateway transactions. On enrollment, an originator will get a single pseudo-value that is assigned by Visa. The other networks will assign their own unique values for the originator.<br><br><b>Note:</b><br>Supported only in US for domestic transactions involving Push Payments Gateway Service."
              },
              "value": {
                "maxLength": 9,
                "minLength": 9,
                "type": "string"
              }
            }
          }
        ]
      },
      "DigitalAssetQuerySuccessResponse-1": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-1"
                  }
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-1"
                  }
                ]
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-1"
                  }
                ]
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail"
              }
            }
          }
        }
      },
      "SenderCountryOfBirth": {
        "maxLength": 3,
        "minLength": 3,
        "type": "string",
        "description": "Sender country of birth. Conditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths). Format: 3-digit numeric or 3-character ISO-3166 (Alpha-3) country code\n",
        "example": "840 USA"
      },
      "DigitalAssetQuerySuccessResponse-6": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/TransactionStatus-1"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "fundingStatus": {
                "$ref": "#/components/schemas/FundingStatus-7"
              },
              "returnDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "$ref": "#/components/schemas/InitiatingPartyId"
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-6"
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-6"
              },
              "transactionDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail-3"
              }
            }
          }
        }
      },
      "DigitalAssetQuerySuccessResponse-5": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "This field indicates the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "properties": {
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransactionStatus-6"
                  }
                ],
                "exampleSetFlag": false
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnAmount": {
                "description": "The return amount to be paid out to the Originating Entity expressed in the currency specified in returnCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-6"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnPayoutId": {
                "description": "This is the payoutId generated by the Visa for the return\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "fxConversionRate": {
                "description": "This field contains the exchange rate applied to the pair of settlementCurrencyCode and destinationCurrencyCode\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId-4"
              },
              "deliveredDateTime": {
                "$ref": "#/components/schemas/DeliveredDateTime-2"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId-3"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnAmount value. It will be same as the client’s settlement currency against the original payout transaction.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nISO20022 field name: Payment Return - Instructed Amount Currency Code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceAmount": {
                "description": "The return amount as sent by Visa’s network partner, expressed in the currency specified in returnSourceCurrencyCode field.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnReasonDetails": {
                "$ref": "#/components/schemas/ReturnReasonDetails-5"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnConversionRate": {
                "description": "This field contains the exchange rate applied to convert returnSourceCurrencyCode to returnCurrencyCode.",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ConversionRate-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount \nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "returnSourceCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated with the returnSourceAmount value. It will be same as the destination currency on the original payout transaction\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "digitalAssetAdditionalDetail": {
                "$ref": "#/components/schemas/DigitalAssetAdditionalDetail-2"
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountWalletRecipientTransactorDetail-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountWalletRecipientIndividual-1"
          },
          {
            "$ref": "#/components/schemas/AccountWalletRecipientCompany-1"
          }
        ]
      },
      "OCTResponseTransactionDetail-11": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "NetworkResponseVauData": {
        "type": "object",
        "properties": {
          "vauFlag": {
            "$ref": "#/components/schemas/VauFlag"
          },
          "accountStatus": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "vauErrorReasonCode": {
            "$ref": "#/components/schemas/VauErrorReasonCode"
          },
          "replacementCardAccountNumber": {
            "$ref": "#/components/schemas/ReplacementCardAccountNumber"
          },
          "replacementCardExpirationDate": {
            "$ref": "#/components/schemas/ReplacementCardExpirationDate"
          }
        }
      },
      "AccountWalletRecipientTransactorDetail-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountWalletRecipientIndividual-2"
          },
          {
            "$ref": "#/components/schemas/AccountWalletRecipientCompany-2"
          }
        ]
      },
      "AccountWalletRecipientCompany-2": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/AccountWalletRecipientPayoutAddress-2"
          }
        }
      },
      "SenderReferenceNumber-4": {
        "maxLength": 34,
        "minLength": 1,
        "description": "Conditional: If the sender intends to fund the transaction with card or wallet and not a bank account, then a reference number unique to the sender is required. This field is required if senderAccountNumber is not sent. Client should not send any card PANs in this field for payout.\n",
        "example": "John",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "AccountWalletRecipientCompany-1": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/AccountWalletRecipientPayoutAddress-1"
          }
        }
      },
      "SenderReferenceNumber-2": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "Conditional: If the sender intends to fund the transaction with a non-financial instrument (for example, cash), then a reference number unique to the sender is required. This field is required if senderAccountNumber is not sent.\n",
        "example": "John"
      },
      "SenderReferenceNumber-3": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nRequired, if the transaction is a money transfer, pre-paid load, or credit card bill pay, and if the sender intends to fund the transaction with a non-financial instrument (for example, cash), a reference number unique to the sender is required. Required, if the transaction is a funds disbursement, the field is required. Required, if the transaction will be routed to STAR networks via Visa Push Payments Gateway Service. If this field is sent and transaction is not routed over STAR the field is still sent to the other networks as an optional field. Format Alphanumeric<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be unique within sender's system</li>\n  <li>No special symbols except hyphen or underscore</li>\n  <li>This field is required if senderAccountNumber is not sent.</li>\n</ul>",
        "example": "SND-REF-12345"
      },
      "SenderReferenceNumber-1": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "Reference number of the sender",
        "example": "SND-REF-12345"
      },
      "CurrencyInfoFlexibleSettlementNotification": {
        "required": [
          "accountId",
          "currencyDetails",
          "eventType",
          "initiatingPartyId",
          "notificationDateTime"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa."
          },
          "eventType": {
            "type": "string",
            "description": "The type of event that triggered the notification.",
            "enum": [
              "CURRENCY_INFO"
            ]
          },
          "currencyDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CurrencyDetails"
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType"
          }
        }
      },
      "WalletSenderIsCompany-3": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanySenderIdentificationListWallet-3"
          }
        }
      },
      "WalletSenderIsCompany-2": {
        "required": [
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanySenderIdentificationListWallet-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ReimbursementAttribute": {
        "type": "string",
        "description": "Reimbursement attribute"
      },
      "WalletSenderIsCompany-1": {
        "required": [
          "name",
          "type"
        ],
        "properties": {
          "name": {
            "description": "Sender company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name:<br>For 4th party payments: \"Ultimate Debtor Name\"<br>For 3rd party payments: \"Debtor Name\"\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "type": {
            "description": "Identifies the type of sender - \"C\" for Company \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type-1"
              }
            ],
            "exampleSetFlag": false
          },
          "identificationList": {
            "$ref": "#/components/schemas/CompanySenderIdentificationListWallet-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "Bank-3": {
        "required": [
          "accountName",
          "accountNumber",
          "accountNumberType",
          "countryCode",
          "currencyCode"
        ],
        "type": "object",
        "properties": {
          "BIC": {
            "description": "beneficiary bank account Business Identifier Code (BIC)\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution BIC\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BIC"
              }
            ]
          },
          "bankCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "beneficiary bank account bank code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification\n",
            "example": "173"
          },
          "bankName": {
            "description": "Recipient's bank name\n\nISO20022 field name: Creditor Agent Financial Institution Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "branchCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "beneficiary bank account branch code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Branch Identification\n",
            "example": "123456"
          },
          "accountName": {
            "description": "beneficiary bank account name i.e. account holder name as recorded on beneficiary bank account\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountName"
              }
            ]
          },
          "accountType": {
            "type": "string",
            "description": "Recipient bank account type\n\n* `1` - Checking\n* `2` - Saving \n* `3` - Maestra\n* `4` - Visa\n* `5` - Loan\n* `6` - Nre\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Type\n",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5",
              "6"
            ]
          },
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "bankCodeType": {
            "type": "string",
            "description": "beneficiary bank account bank code type\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification Type\n",
            "enum": [
              "ABA",
              "SORT_CODE",
              "DEFAULT"
            ]
          },
          "currencyCode": {
            "description": "beneficiary bank account currency code\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "accountNumber": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "beneficiary bank account number\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n",
            "example": "301234567890143289301"
          },
          "accountNumberType": {
            "type": "string",
            "description": "beneficiary bank account number type. Valid values: \"IBAN\", \"DEFAULT\", \"ALIAS\"\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Financial Institution Account Number Type\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "DEFAULT",
              "ALIAS"
            ]
          }
        },
        "description": "Recipient's bank object\n\nConditional object when payoutMethod has value 'B'\n"
      },
      "ValidatePayoutCardRequest-13": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-14"
          }
        ]
      },
      "OCTCardAcceptorAddress-1": {
        "required": [
          "city",
          "country"
        ],
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 13,
            "minLength": 1,
            "type": "string",
            "description": "Specifies the city where the card acceptor (merchant or entity) is located.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the merchant's registered city</li>\n  <li>Should not include special characters or numeric values unless part of the official city name</li>\n</ul>",
            "example": "Austin"
          },
          "state": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Indicates the state or province of the card acceptor. Format: String (Use official state or province abbreviation if applicable)<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match merchant registration details</li>\n</ul>",
            "example": "TX"
          },
          "county": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Specifies the county or district where the card acceptor is located.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Optional field in most implementations</li>\n  <li>Must match merchant registration details if provided</li>\n</ul>",
            "example": "Travis"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Identifies the country of the card acceptor using ISO 3166-1 alpha-3 format. Format: Three uppercase alphabetic characters (A–Z) ISO 3166-1 alpha-3 standard<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match the merchant's registered country</li>\n  <li>Typically constant for all transactions under the same merchant profile</li>\n</ul>",
            "example": "USA"
          },
          "postalCode": {
            "maxLength": 9,
            "minLength": 1,
            "type": "string",
            "description": "Provides the postal or ZIP code of the card acceptor's location. Format: Numeric or alphanumeric (depending on country)<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match merchant registration details</li>\n  <li>Include full code without spaces if required by API</li>\n</ul>",
            "example": "78701"
          },
          "addressLine": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Provides the street address or primary address line of the card acceptor. Format: Alphanumeric characters<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Should include street number and name</li>\n  <li>Avoid special characters except standard punctuation</li>\n</ul>",
            "example": "123 Main Street"
          }
        },
        "description": "Card acceptor address for Original Credit Transaction"
      },
      "ValidatePayoutCardRequest-14": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-15"
          }
        ]
      },
      "Bank-4": {
        "required": [
          "accountName",
          "accountNumber",
          "accountNumberType",
          "countryCode",
          "currencyCode"
        ],
        "properties": {
          "BIC": {
            "description": "recipient bank account Business Identifier Code (BIC)\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution BIC\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BIC-1"
              }
            ],
            "exampleSetFlag": false
          },
          "bankCode": {
            "maxLength": 12,
            "minLength": 1,
            "description": "recipient bank account bank code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification\n",
            "example": "173",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "bankName": {
            "description": "Recipient's bank name\n\nISO20022 field name: Creditor Agent Financial Institution Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "branchCode": {
            "maxLength": 12,
            "minLength": 1,
            "description": "recipient bank account branch code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Branch Identification\n",
            "example": "123456",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "accountName": {
            "description": "recipient bank account name i.e. account holder name as recorded on recipient bank account\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "accountType": {
            "description": "Recipient bank account type\n\n* `1` - Checking\n* `2` - Saving \n* `3` - Maestra\n* `4` - Vista\n* `5` - Loan\n* `6` - NRE\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Type\n",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5",
              "6"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "countryCode": {
            "$ref": "#/components/schemas/AlphaCountryCode-3"
          },
          "bankCodeType": {
            "description": "recipient bank account bank code type\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "enum": [
              "ABA",
              "SORT_CODE",
              "DEFAULT"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "currencyCode": {
            "description": "recipient bank account currency code\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "accountNumber": {
            "description": "recipient bank account number\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountNumber-2"
              }
            ],
            "exampleSetFlag": false
          },
          "accountNumberType": {
            "description": "recipient bank account number type. Valid values: \"IBAN\", \"ALIAS\" and \"DEFAULT\"\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "ALIAS",
              "DEFAULT"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          }
        },
        "description": "Recipient's bank object\n\nConditional object when payoutMethod has value 'B'\n",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "OCTResponseTransactionDetail-18": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "Bank-1": {
        "required": [
          "accountName",
          "accountNumber",
          "accountNumberType",
          "countryCode",
          "currencyCode"
        ],
        "type": "object",
        "properties": {
          "BIC": {
            "description": "beneficiary bank account Business Identifier Code (BIC)\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution BIC\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BIC"
              }
            ]
          },
          "bankCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "beneficiary bank account bank code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification\n",
            "example": "173"
          },
          "bankName": {
            "description": "Recipient's bank name\n\nISO20022 field name: Creditor Agent Financial Institution Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "branchCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "beneficiary bank account branch code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Branch Identification\n",
            "example": "123456"
          },
          "accountName": {
            "description": "beneficiary bank account name i.e. account holder name as recorded on beneficiary bank account\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountName"
              }
            ]
          },
          "accountType": {
            "type": "string",
            "description": "Recipient bank account type\n\n* `1` - Checking\n* `2` - Saving \n* `3` - Maestra\n* `4` - Visa\n* `5` - Loan\n* `6` - Nre\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Type\n",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5",
              "6"
            ]
          },
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "bankCodeType": {
            "type": "string",
            "description": "beneficiary bank account bank code type\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification Type\n",
            "enum": [
              "ABA",
              "SORT_CODE",
              "DEFAULT"
            ]
          },
          "currencyCode": {
            "description": "beneficiary bank account currency code\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "accountNumber": {
            "maxLength": 254,
            "minLength": 1,
            "type": "string",
            "description": "beneficiary bank account number\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n"
          },
          "accountNumberType": {
            "type": "string",
            "description": "beneficiary bank account number type. Valid values: \"IBAN\", \"DEFAULT\", \"ALIAS\"\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Financial Institution Account Number Type\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "DEFAULT",
              "ALIAS"
            ]
          }
        },
        "description": "Recipient's bank object\n\nConditional object when payoutMethod has value 'B'\n"
      },
      "PosData-1": {
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData-1"
          },
          "panEntryMode": {
            "type": "number",
            "description": "PAN entry mode"
          },
          "posEnvironment": {
            "$ref": "#/components/schemas/PosEnvironment"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData-1"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-2"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant-1"
          }
        }
      },
      "ValidatePayoutCardRequest-15": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-16"
          }
        ]
      },
      "Bank-2": {
        "required": [
          "accountName",
          "accountNumber",
          "accountNumberType",
          "countryCode",
          "currencyCode"
        ],
        "type": "object",
        "properties": {
          "BIC": {
            "description": "beneficiary bank account Business Identifier Code (BIC)\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution BIC\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BIC"
              }
            ]
          },
          "bankCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "beneficiary bank account bank code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification\n",
            "example": "173"
          },
          "bankName": {
            "description": "Recipient's bank name\n\nISO20022 field name: Creditor Agent Financial Institution Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "branchCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "beneficiary bank account branch code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Branch Identification\n",
            "example": "123456"
          },
          "accountName": {
            "description": "beneficiary bank account name i.e. account holder name as recorded on beneficiary bank account\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountName"
              }
            ]
          },
          "accountType": {
            "type": "string",
            "description": "Recipient bank account type\n\n* `1` - Checking\n* `2` - Saving \n* `3` - Maestra\n* `4` - Visa\n* `5` - Loan\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Type\n",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5"
            ]
          },
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "bankCodeType": {
            "type": "string",
            "description": "beneficiary bank account bank code type\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification Type\n",
            "enum": [
              "ABA",
              "SORT_CODE",
              "DEFAULT"
            ]
          },
          "currencyCode": {
            "description": "beneficiary bank account currency code\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "accountNumber": {
            "description": "beneficiary bank account number\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountNumber-1"
              }
            ]
          },
          "accountNumberType": {
            "type": "string",
            "description": "beneficiary bank account number type. Valid values: \"IBAN\" and \"DEFAULT\"\n\n(Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Financial Institution Account Number Type\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "DEFAULT"
            ]
          }
        },
        "description": "Recipient's bank object\n\nConditional object when payoutMethod has value 'B'\n"
      },
      "PosData-2": {
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData-2"
          },
          "panEntryMode": {
            "type": "number",
            "description": "PAN entry mode"
          },
          "posEnvironment": {
            "$ref": "#/components/schemas/PosEnvironment"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData-2"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-3"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant-2"
          }
        }
      },
      "OCTResponseTransactionDetail-16": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "RecipientType": {
        "type": "string",
        "description": "Identifies the type of recipient. ISO20022 field name: Creditor Identification Type.\n",
        "example": "I",
        "enum": [
          "I",
          "C"
        ]
      },
      "Name-1": {
        "maxLength": 70,
        "minLength": 1,
        "type": "string",
        "description": "It can have either company name or fullname based on type (I or C)",
        "example": "Visa"
      },
      "OCTResponseTransactionDetail-15": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-9"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "ValidatePayoutCardRequest-10": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-11"
          }
        ]
      },
      "PosData-4": {
        "type": "object",
        "properties": {
          "pinData": {
            "$ref": "#/components/schemas/PinData-3"
          },
          "panEntryMode": {
            "type": "number",
            "description": "PAN entry mode"
          },
          "posEnvironment": {
            "$ref": "#/components/schemas/PosEnvironment"
          },
          "motoECIIndicator": {
            "$ref": "#/components/schemas/MotoECIIndicator-1"
          },
          "posConditionCode": {
            "$ref": "#/components/schemas/PosConditionCode"
          },
          "magneticStripeData": {
            "$ref": "#/components/schemas/MagneticStripeData-3"
          },
          "pointOfServiceCapability": {
            "$ref": "#/components/schemas/PointOfServiceCapability-4"
          },
          "integratedCircuitCardData": {
            "$ref": "#/components/schemas/IntegratedCircuitCardData-1"
          },
          "specialConditionIndicatorMerchant": {
            "$ref": "#/components/schemas/SpecialConditionIndicatorMerchant-3"
          }
        }
      },
      "OCTResponseTransactionDetail-14": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-8"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "ValidatePayoutCardRequest-11": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-12"
          }
        ]
      },
      "OCTResponseTransactionDetail-13": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-7"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "Bank-5": {
        "required": [
          "accountName",
          "accountNumber",
          "accountNumberType",
          "countryCode",
          "currencyCode"
        ],
        "properties": {
          "BIC": {
            "description": "recipient bank account Business Identifier Code (BIC)\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution BIC\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BIC-1"
              }
            ],
            "exampleSetFlag": false
          },
          "bankCode": {
            "maxLength": 12,
            "minLength": 1,
            "description": "recipient bank account bank code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification\n",
            "example": 173,
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "bankName": {
            "description": "Recipient's bank name\n\nISO20022 field name: Creditor Agent Financial Institution Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "branchCode": {
            "maxLength": 12,
            "minLength": 1,
            "description": "recipient bank account branch code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Branch Identification\n",
            "example": 123456,
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "accountName": {
            "description": "recipient bank account name i.e. account holder name as recorded on recipient bank account\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountName-1"
              }
            ],
            "exampleSetFlag": false
          },
          "accountType": {
            "description": "Recipient bank account type\n\n* `1` - Checking\n* `2` - Saving \n* `3` - Maestra\n* `4` - Vista\n* `5` - Loan\n* `6` - NRE\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Type\n",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5",
              "6"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "countryCode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode-3"
              }
            ],
            "exampleSetFlag": false
          },
          "bankCodeType": {
            "description": "recipient bank account bank code type\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "enum": [
              "ABA",
              "SORT_CODE",
              "DEFAULT"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "currencyCode": {
            "description": "recipient bank account currency code\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "accountNumber": {
            "description": "recipient bank account number\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountNumber-3"
              }
            ],
            "exampleSetFlag": false
          },
          "accountNumberType": {
            "description": "recipient bank account number type. Valid values: \"IBAN\", \"ALIAS\" and \"DEFAULT\"\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "ALIAS",
              "DEFAULT"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          }
        },
        "description": "Recipient's bank object\n\nConditional object when payoutMethod has value 'B'\n",
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "Card": {
        "type": "object",
        "properties": {
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Conditional-Required to be sent along with \"PCI_TOKEN_REFID\""
          },
          "accountType": {
            "type": "string",
            "description": "This is used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.<br>00-Not applicable<br>10-Saving account<br>20-Checking account<br>30-Credit card account<br>40-Universal account",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT",
              "ALIAS",
              "PCI_TOKEN_REFID",
              "PAYNAME"
            ]
          }
        }
      },
      "OCTResponseTransactionDetail-12": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponse",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime",
          "transactionIdentifier"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status-2"
          },
          "settlementDate": {
            "$ref": "#/components/schemas/SettlementDate-1"
          },
          "networkResponse": {
            "$ref": "#/components/schemas/OCTNetworkResponse-6"
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-1"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-1"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/TransactionAmount"
          },
          "transactionDateTime": {
            "$ref": "#/components/schemas/TransactionDateTime"
          },
          "serviceProcessingType": {
            "$ref": "#/components/schemas/ServiceProcessingType"
          },
          "transactionIdentifier": {
            "$ref": "#/components/schemas/TransactionIdentifier"
          },
          "transactionCurrencyCode": {
            "$ref": "#/components/schemas/TransactionCurrencyCode"
          },
          "enablerVerificationValue": {
            "$ref": "#/components/schemas/EnablerVerificationValue"
          },
          "transactionLinkIdentifier": {
            "$ref": "#/components/schemas/TransactionLinkIdentifier"
          }
        }
      },
      "ValidatePayoutCardRequest-12": {
        "required": [
          "transactionDetail"
        ],
        "properties": {
          "transactionDetail": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CardTransactionValidateDetail-1"
              }
            ]
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/PayoutCardRequest-13"
          }
        ]
      },
      "Bank-6": {
        "required": [
          "accountName",
          "accountNumber",
          "accountNumberType",
          "countryCode",
          "currencyCode"
        ],
        "type": "object",
        "properties": {
          "BIC": {
            "description": "recipient bank account Business Identifier Code (BIC)\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution BIC\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BIC"
              }
            ]
          },
          "bankCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account bank code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Financial Institution Clearing System Member Identification\n",
            "example": "173"
          },
          "bankName": {
            "description": "Recipient's bank name\n\nISO20022 field name: Creditor Agent Financial Institution Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/BankName"
              }
            ]
          },
          "branchCode": {
            "maxLength": 12,
            "minLength": 1,
            "type": "string",
            "description": "recipient bank account branch code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Agent Branch Identification\n",
            "example": "123456"
          },
          "accountName": {
            "description": "recipient bank account name i.e. account holder name as recorded on recipient bank account\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountName"
              }
            ]
          },
          "accountType": {
            "type": "string",
            "description": "Recipient bank account type\n\n* `1` - Checking\n* `2` - Saving \n* `3` - Maestra\n* `4` - Vista\n* `5` - Loan\n* `6` - NRE\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Type\n",
            "enum": [
              "1",
              "2",
              "3",
              "4",
              "5",
              "6"
            ]
          },
          "countryCode": {
            "$ref": "#/components/schemas/AlphaCountryCode"
          },
          "bankCodeType": {
            "type": "string",
            "description": "recipient bank account bank code type\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "enum": [
              "ABA",
              "SORT_CODE",
              "DEFAULT"
            ]
          },
          "currencyCode": {
            "description": "recipient bank account currency code\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Currency\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "accountNumber": {
            "description": "recipient bank account number\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Account Number or IBAN\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountNumber"
              }
            ]
          },
          "accountNumberType": {
            "type": "string",
            "description": "recipient bank account number type. Valid values: \"IBAN\", \"ALIAS\" and \"DEFAULT\"\n\n(Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
            "example": "DEFAULT",
            "enum": [
              "IBAN",
              "ALIAS",
              "DEFAULT"
            ]
          }
        },
        "description": "Recipient's bank object\n\nConditional object when payoutMethod has value 'B'\n"
      },
      "ResponseReasonCode": {
        "maxLength": 4,
        "minLength": 1,
        "type": "string",
        "description": "Code indicating the reason for the response. This is used to provide additional information about the transaction status.\n"
      },
      "Card-1": {
        "required": [
          "accountNumber"
        ],
        "type": "object",
        "properties": {
          "cvc": {
            "maxLength": 4,
            "minLength": 3,
            "type": "string",
            "description": "The card verification code It can be cvv2 from the back of Card or dtvv which is token cryptogram.\n"
          },
          "tavv": {
            "type": "string",
            "description": "tavv of the card.\n"
          },
          "cvcType": {
            "type": "string",
            "description": "Type of the cvc. \n",
            "enum": [
              "CVV2",
              "DTVV"
            ]
          },
          "expiryDate": {
            "maxLength": 7,
            "minLength": 7,
            "pattern": "YYYY-MM",
            "type": "string",
            "description": "The expiration date for the primaryAccountNumber in the request. The date should not be a past date. Required when the cvv2Value is present.\n",
            "example": "2022-01"
          },
          "accountNumber": {
            "maxLength": 19,
            "minLength": 13,
            "type": "string",
            "description": "Primary account number for which the account verifications are being performed\n",
            "example": "1233434564375"
          }
        }
      },
      "AdditionalTokenRespInfo": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "This field when present in the API response identifies if the transaction is eligible for token services. Valid token service values is 1 (Token program). <br>This field will not be sent in the response if the transaction is ineligible for token services.",
        "example": "Y"
      },
      "Card-2": {
        "type": "object",
        "properties": {
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Conditional-Required to be sent along with \"PCI_TOKEN_REFID\""
          },
          "accountType": {
            "type": "string",
            "description": "This is used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.<br>00-Not applicable<br>10-Saving account<br>20-Checking account<br>30-Credit card account<br>40-Universal account",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT",
              "ALIAS",
              "PCI_TOKEN_REFID",
              "PAYNAME"
            ]
          }
        }
      },
      "Card-3": {
        "type": "object",
        "properties": {
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Conditional-Required to be sent along with \"PCI_TOKEN_REFID\""
          },
          "accountType": {
            "type": "string",
            "description": "This is used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.<br>00-Not applicable<br>10-Saving account<br>20-Checking account<br>30-Credit card account<br>40-Universal account",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "If type is PAYNAME then length should be between 6 and 50 characters.Format should be +payname.domain. The payname, between '+' and '.' characters, should be minimum 3 characters.<br> For \"PCI_TOKEN_REFID\", length is 1-75 and must accompany with \"merchantId\". <br>For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT",
              "ALIAS",
              "PCI_TOKEN_REFID",
              "PAYNAME"
            ]
          }
        }
      },
      "AccountWalletRecipientCompany": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "description": "Recipient company name. <br>Must not contain exclusively numeric characters\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"C\" for Company \n\nISO20022 field name: Creditor Identification Type       \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/AccountWalletRecipientPayoutAddress"
          }
        }
      },
      "Card-4": {
        "type": "object",
        "properties": {
          "merchantId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Conditional-Required to be sent along with \"PCI_TOKEN_REFID\""
          },
          "accountType": {
            "type": "string",
            "description": "This is used to identify the account type of the recipientPrimaryAccountNumber in the request. Below are the possible values.<br>00-Not applicable<br>10-Saving account<br>20-Checking account<br>30-Credit card account<br>40-Universal account",
            "enum": [
              "00",
              "10",
              "20",
              "30",
              "40"
            ]
          },
          "accountNumber": {
            "maxLength": 75,
            "minLength": 1,
            "type": "string",
            "description": "For \"DEFAULT\" PAN/Token can be entered from 13-19 characters."
          },
          "expirationDate": {
            "$ref": "#/components/schemas/CardExpiryDate-1"
          },
          "accountNumberType": {
            "type": "string",
            "enum": [
              "DEFAULT",
              "ALIAS",
              "PCI_TOKEN_REFID",
              "PAYNAME"
            ]
          }
        }
      },
      "PayoutMethod-5": {
        "description": "Originating Entity must indicate the payout method i.e. Account or Wallet or Digital Asset\n\nValid values:\n- \"B\" Visa Direct Account\n- \"W\" Visa Direct Wallet\n- \"D\" Visa Direct Digital Asset\n",
        "enum": [
          "B",
          "W",
          "D"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "PayoutMethod-4": {
        "description": "Originating Entity must indicate the payout method i.e. Account or Wallet\n\nValid values:\n- \"B\" Visa Direct Account\n- \"W\" Visa Direct Wallet\n",
        "enum": [
          "B",
          "W"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "PayoutMethod-3": {
        "type": "string",
        "description": "Originating Entity must indicate the payout method i.e. Account, Wallet or Card\n\nValid values:\n- \"B\" Visa Direct Account\n- \"W\" Visa Direct Wallet\n- \"C\" Visa Direct Card\n",
        "enum": [
          "B",
          "W",
          "C"
        ]
      },
      "PayoutMethod-2": {
        "type": "string",
        "description": "Originating Entity must indicate the payout method i.e. Account, Wallet or Card\n\nValid values:\n- \"B\" Visa Direct Account\n- \"W\" Visa Direct Wallet\n- \"C\" Visa Direct Card\n",
        "enum": [
          "B",
          "W",
          "C"
        ]
      },
      "PayoutMethod-1": {
        "type": "string",
        "description": "Originating Entity must indicate the payout method i.e. Account or Wallet or Digital Asset\n\nValid values:\n- \"B\" Visa Direct Account\n- \"W\" Visa Direct Wallet\n- \"D\" Visa Direct Digital Asset\n",
        "enum": [
          "B",
          "W",
          "D"
        ]
      },
      "SettlementOverdueDetailsTotalAmountOverdue": {
        "type": "number",
        "description": "Total amount currently overdue. This represents only the amounts that have actually breached their due date/time, excluding any future-dated amounts that are not yet due.",
        "format": "double"
      },
      "PurposeOfPaymentCodes-1": {
        "title": "PurposeOfPaymentCodes",
        "required": [
          "code",
          "description"
        ],
        "type": "object",
        "properties": {
          "code": {
            "$ref": "#/components/schemas/PurposeOfPayment-2"
          },
          "description": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Description of purpose of payment code.",
            "example": "Salary/payroll"
          },
          "senderCompany": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the sender is a company."
          },
          "recipientCompany": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the recipient is a company."
          },
          "senderIndividual": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the sender is an individual."
          },
          "recipientIndividual": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the recipient is an individual."
          }
        }
      },
      "PurposeOfPaymentCodes-2": {
        "title": "PurposeOfPaymentCodes",
        "required": [
          "code",
          "description"
        ],
        "type": "object",
        "properties": {
          "code": {
            "$ref": "#/components/schemas/PurposeOfPayment-3"
          },
          "description": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Description of purpose of payment code.",
            "example": "Salary/payroll"
          },
          "senderCompany": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the sender is a company."
          },
          "recipientCompany": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the recipient is a company."
          },
          "senderIndividual": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the sender is an individual."
          },
          "recipientIndividual": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the recipient is an individual."
          }
        }
      },
      "PurposeOfPaymentCodes-3": {
        "title": "PurposeOfPaymentCodes",
        "required": [
          "code",
          "description"
        ],
        "properties": {
          "code": {
            "$ref": "#/components/schemas/PurposeOfPayment-5"
          },
          "description": {
            "maxLength": 140,
            "minLength": 1,
            "description": "Description of purpose of payment code.",
            "example": "Salary/payroll",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "senderCompany": {
            "description": "Is the purpose of payment code valid if the sender is a company.",
            "exampleSetFlag": false,
            "types": [
              "boolean"
            ]
          },
          "recipientCompany": {
            "description": "Is the purpose of payment code valid if the recipient is a company.",
            "exampleSetFlag": false,
            "types": [
              "boolean"
            ]
          },
          "senderIndividual": {
            "description": "Is the purpose of payment code valid if the sender is an individual.",
            "exampleSetFlag": false,
            "types": [
              "boolean"
            ]
          },
          "recipientIndividual": {
            "description": "Is the purpose of payment code valid if the recipient is an individual.",
            "exampleSetFlag": false,
            "types": [
              "boolean"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "PayoutToAccountRequest-1": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-1"
              }
            ]
          }
        }
      },
      "PayoutToAccountRequest-5": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail"
              }
            ]
          }
        }
      },
      "PayoutToAccountRequest-4": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-8"
              }
            ]
          }
        }
      },
      "PayoutToAccountRequest-3": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "PayoutToAccountRequest-2": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \n\nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "VisaRateTableId-1": {
        "maxLength": 5,
        "minLength": 1,
        "type": "string",
        "description": "Identifies the Visa-designated foreign exchange (FX) rate table used to calculate the exchange rate for the transaction under persistent FX processing. Format Represents the unique identifier of the Visa FX rate table.",
        "example": "12345"
      },
      "SharingGroupCode-1": {
        "maxLength": 1,
        "minLength": 1,
        "type": "string",
        "description": "This field is optionally used by Push Payments Gateway participants (merchants and acquirers) to specify the network access priority.<br>Refer to <a\n     href=\"/request_response_code#network_id_and_sharing_group_code\">Sharing Group Code</a><br><b>Note:</b><br>Supported only in US for domestic transactions involving Push Payments Gateway Service.\n",
        "example": "E"
      },
      "PayoutToAccountRequest-9": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-9"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-3"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-8"
              }
            ]
          }
        }
      },
      "PayoutToAccountRequest-8": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-8"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-3"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-7"
              }
            ]
          }
        }
      },
      "PayoutToAccountRequest-7": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-7"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-3"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-6"
              }
            ]
          }
        }
      },
      "PayoutToAccountRequest-6": {
        "required": [
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Originating Entity must indicate the payout method i.e. To Account  \nValid values:\n“B” – Visa Direct Account\n",
            "enum": [
              "B"
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-6"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-3"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-5"
              }
            ]
          }
        }
      },
      "PurposeOfPayment-5": {
        "maxLength": 35,
        "minLength": 1,
        "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
        "example": "ISBEXP",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "PurposeOfPayment-4": {
        "maxLength": 12,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional</b><br><br>\nPurpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market.<br><br>\n<ul>\n  <li>For India, Bangladesh, Egypt and Argentina: Purpose of payment is mandatory for all BAIs except CO, CI and MP</li>\n  <li>For Chile: Purpose of payment is mandatory for BAI-FD</li>\n  <li>For Colombia: Purpose of payment is mandatory for BAI-AA and PP</li>\n  <li>For Saudi Arabia: Purpose of payment is mandatory for all BAIs</li>\n</ul>\nRefer to the <a href=\"request_response_codes#purpose_of_payment_codes\">Purpose of Payment Codes</a> for valid values.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must match allowed purpose codes or descriptive text</li>\n  <li>No special symbols</li>\n</ul>",
        "example": "P2P"
      },
      "ConversionRate-1": {
        "minimum": 0,
        "format": "double",
        "example": 0.07,
        "exampleSetFlag": true,
        "types": [
          "number"
        ]
      },
      "ExchangeRate-1": {
        "type": "number",
        "description": "Specifies the foreign exchange rate applied to the transaction when persistent FX (foreign exchange) processing is involved. This rate is used to convert the transaction amount between the source and destination currencies and is returned in the network response for transparency and reconciliation. Format Decimal number with up to 10 digits, including up to 8 fractional digits. Example structure: X.XXXXXXXX",
        "format": "double",
        "example": 1.23456789
      },
      "PurposeOfPayment-1": {
        "maxLength": 12,
        "minLength": 1,
        "type": "string",
        "description": "<b>Conditional.</b><br>Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market.<br>For India, Bangladesh, Egypt and Argentina-Purpose of payment is mandatory for all BAIs except CO,CI and MP<br>For Chile-Purpose of payment is mandatory for BAI-FD.<br>For Colombia-Purpose of payment is mandatory for BAI-AA and PP",
        "example": "P2P"
      },
      "FundingModel-1": {
        "description": "The fundingModel to apply to this payout.",
        "enum": [
          "PREFUNDED"
        ],
        "exampleSetFlag": false,
        "types": [
          "string"
        ]
      },
      "DigitalAssetPayoutResponse": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "destinationAmount",
              "destinationCurrencyCode",
              "initiatingPartyId",
              "payoutId",
              "settlementAmount",
              "settlementCurrencyCode",
              "status",
              "transactionAmount",
              "transactionCurrencyCode",
              "transactionDateTime"
            ],
            "type": "object",
            "properties": {
              "status": {
                "$ref": "#/components/schemas/200TransactionStatus"
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "settlementAmount": {
                "description": "This is the amount to be debited from Originating Entity/Visa Client's funding account.\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "clientReferenceId": {
                "$ref": "#/components/schemas/ClientReferenceId"
              },
              "destinationAmount": {
                "description": "The destination amount that will be deposited to the recipient account, expressed in the Recipient bank currency code provided in the original request. If the Originating Entity sends a payout in a currency that is not the same as the destination currency then Visa will perform FX conversion and calculate the amount to be deposited to the recipient bank account, and provide this information back to the Originating Entity.\n\nNote: Destination amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units.\n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "transactionAmount": {
                "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\n\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \n\nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\n\nISO20022 field name: Instructed Amount\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Amount"
                  }
                ]
              },
              "expectedPostingDate": {
                "$ref": "#/components/schemas/ExpectedPostingDate-1"
              },
              "transactionDateTime": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TimestampType"
                  }
                ]
              },
              "settlementCurrencyCode": {
                "description": "The settlement currency code\n\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: GBP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              },
              "destinationCurrencyCode": {
                "description": "The 3-character ISO-4217 or digital asset currency code in this field reflects the currency associated with the destination amount \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code or digital asset currency code (e.g. USDC)\n",
                "anyOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  },
                  {
                    "$ref": "#/components/schemas/DigitalAssetCurrencyCode"
                  }
                ]
              },
              "transactionCurrencyCode": {
                "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \n\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\nExample: PHP\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCurrencyCode"
                  }
                ]
              }
            }
          }
        }
      },
      "PurposeOfPayment-3": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
        "example": "0210000001"
      },
      "PurposeOfPayment-2": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Purpose of payment code is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Purpose of Payment\n",
        "example": "ISBEXP"
      },
      "RecipientIdentificationList-4": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdType"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Issuer Country\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "RecipientIdentificationList-5": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/RecipientIdentification-2"
        }
      },
      "RecipientIdentificationList-6": {
        "description": "Identification list of recipient",
        "items": {
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdType-3"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-1"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "RecipientIdentificationList-7": {
        "description": "Identification list of recipient",
        "items": {
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdType-3"
                }
              ],
              "exampleSetFlag": false
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber-2"
                }
              ],
              "exampleSetFlag": false
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode-3"
                }
              ],
              "exampleSetFlag": true
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "ExpectedPostingDateForValidate": {
        "maxLength": 10,
        "minLength": 10,
        "description": "This is an estimated date by which the payout should be posted to the recipient’s account. This date should be communicated to the sender and recipient (if possible) to ensure that they know when to expect the funds.\n\nIt is optional field, if exists, indicates expected posting date. \n\nThe EPD is a variable field that may alter between the responses of validate payout API and send payout API.\n\nISO20022 field name: Interbank Settlement Date\n",
        "format": "date",
        "example": "1980-02-01"
      },
      "RecipientIdentificationList-1": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/RecipientIdentification"
        }
      },
      "RecipientIdentificationList-2": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdType-2"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "RecipientIdentificationList-3": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/RecipientIdentification-1"
        }
      },
      "PayoutAccountRequest-4": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-3"
              }
            ]
          },
          "senderDetail": {
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-2"
              },
              "cityOfBirth": {
                "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CityOfBirth"
                  }
                ]
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "countryOfBirth": {
                "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCountryCode"
                  }
                ]
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-3"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-2"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-2"
              },
              "cityOfBirth": {
                "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CityOfBirth"
                  }
                ]
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "countryOfBirth": {
                "description": "Recipient country of birth\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AlphaCountryCode"
                  }
                ]
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-2"
              }
            ]
          }
        }
      },
      "PayoutAccountRequest-1": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountSenderTransactorDetailWithID-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountRecipientTransactorDetailWithID-1"
              }
            ]
          }
        }
      },
      "PayoutAccountRequest-2": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountWalletPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletSenderTransactorDetail"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-1"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletRecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletRecipientTransactorDetail"
              }
            ]
          }
        }
      },
      "AFTRNetworkResponse-4": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId-2"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode-3"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-4"
          },
          "dcapIndicator": {
            "$ref": "#/components/schemas/DcapIndicator"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo-1"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference-1"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode-1"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator-1"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/AFTRCardResponseTokenData-1"
          },
          "senderIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual-1"
          }
        }
      },
      "AFTRNetworkResponse-2": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-3"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/CardResponseTokenData"
          },
          "senderIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "PayoutAccountRequest-9": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-8"
              }
            ]
          }
        }
      },
      "AFTRNetworkResponse-1": {
        "required": [
          "actionCode"
        ],
        "type": "object",
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "actionCode": {
            "$ref": "#/components/schemas/ActionCode"
          },
          "approvalCode": {
            "$ref": "#/components/schemas/ApprovalCode-2"
          },
          "settlementInfo": {
            "$ref": "#/components/schemas/NetworkResponseSettlementInfo"
          },
          "customerReference": {
            "$ref": "#/components/schemas/CustomerReference"
          },
          "responseReasonCode": {
            "$ref": "#/components/schemas/ResponseReasonCode"
          },
          "feeProgramIndicator": {
            "$ref": "#/components/schemas/FeeProgramIndicator"
          },
          "cardResponseTokenData": {
            "$ref": "#/components/schemas/AFTRCardResponseTokenData"
          },
          "senderIdentificationNumberIndividual": {
            "$ref": "#/components/schemas/RecipientIdentificationNumberIndividual"
          }
        }
      },
      "PayoutAccountRequest-7": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "PayoutAccountRequest-8": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "PayoutAccountRequest-5": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“B” – Visa Direct Account\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountWalletPayoutAddress-2"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments: \"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-2"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletSenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "bank"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-1"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletRecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletRecipientTransactorDetail-2"
              }
            ]
          }
        }
      },
      "QueryResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/AccountQuerySuccessResponse-4"
          },
          {
            "$ref": "#/components/schemas/AccountQueryErrorResponse-2"
          },
          {
            "$ref": "#/components/schemas/AccountQueryPendingCancelledResponse"
          },
          {
            "$ref": "#/components/schemas/CardQueryResponse"
          }
        ]
      },
      "TransactionDetailMetadata-14": {
        "title": "TransactionDetail",
        "required": [
          "purposeOfPayment"
        ],
        "type": "object",
        "properties": {
          "purposeOfPayment": {
            "$ref": "#/components/schemas/PurposeOfPayments"
          }
        },
        "description": "TransactionDetail Object                \n"
      },
      "RecipientIdentificationList-8": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdType"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "USA",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "RecipientAddress-3": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "<b>Conditional</b><br><br>\nContains the city name of the recipient address.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain a valid city name as per Visa specifications.</li>\n  <li>It is required for cross-border transactions that are originating from or destined to Canada and for domestic Colombia transactions.</li>\n</ul>",
            "example": "Toronto"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Country code (ISO 3166-1 alpha-3) of the recipient's address. When present, this field contains the recipient's country code. This identifies the country associated with the recipient's address for the transaction. Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a><br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain a valid ISO 3166-1 alpha-3 country code.</li>\n</ul>",
            "example": "CAN"
          },
          "stateCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "State code of the recipient's address.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Required for transactions originating from or destined to the United States and Canada.</li>\n</ul><br><br>\n<b>Note:</b> This field is not applicable for domestic Colombia transactions.",
            "example": "TX"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Postal or zip code of the recipient's address.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>It is required for cross-border transactions that are originating from or destined to Canada and for domestic Colombia transactions.</li>\n</ul>",
            "example": "95131"
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Contains the first line of the recipient address.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain a valid address line as per Visa specifications.</li>\n  <li>It is required for cross-border transactions that are originating from or destined to Canada and for domestic Colombia transactions.</li>\n</ul>",
            "example": "123 Main Street"
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Optional. This field contains the second line of the recipient address.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain a valid address line as per Visa specifications.</li>\n</ul>",
            "example": "Apartment 4B"
          },
          "subDivisionMinorCode": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string",
            "description": "Optional. This field contains the ISO subdivision minor code (for example, a county within a state) of the recipient's address. Not applicable for domestic Colombia transactions."
          }
        },
        "description": "Address information of the recipient"
      },
      "RecipientAddress-2": {
        "type": "object",
        "properties": {
          "city": {
            "type": "string",
            "description": "City of the recipient's address",
            "example": "San Francisco"
          },
          "state": {
            "type": "string",
            "description": "State or province of the recipient's address",
            "example": "CA"
          },
          "country": {
            "type": "string",
            "description": "Country code (ISO 3166-1 alpha-3) of the recipient's address",
            "example": "USA"
          },
          "zipCode": {
            "type": "string",
            "description": "Postal or zip code of the recipient's address",
            "example": "94404"
          },
          "addressLine1": {
            "type": "string",
            "description": "First line of the recipient's address",
            "example": "123 Main St"
          },
          "addressLine2": {
            "type": "string",
            "description": "Second line of the recipient's address",
            "example": "Apt 4B"
          }
        },
        "description": "Address information of the recipient"
      },
      "CardAcceptorPhoneNumber": {
        "maxLength": 16,
        "minLength": 1,
        "type": "string",
        "description": "Phone number of the card acceptor",
        "example": "+1234567890"
      },
      "IntegratedCircuitCardData-1": {
        "maxLength": 510,
        "minLength": 2,
        "type": "string",
        "description": "A blob containing the Chip card data in TLV format.",
        "example": "8201495F2A0201245F34010182021C008407A0000000031010950580000000009A031102249B0268009C01009F02060000000000009F03060000000000009F0607A00000000310109F0802008C9F0902008C9F100706010A039000009F1A0201249F2608423158936ED6C38F9F2701809F3303E0B0C89F34034103029F3501229F360200019F3704ACAC66E89F5800DF0100DF0200DF0400"
      },
      "OCTResponseOriginatorDetail-1": {
        "required": [
          "cardAcceptor"
        ],
        "type": "object",
        "properties": {
          "cardAcceptor": {
            "$ref": "#/components/schemas/OCTResponseCardAcceptor-1"
          }
        }
      },
      "TransactionRefWithCondition": {
        "required": [
          "$ref",
          "name",
          "presence"
        ],
        "type": "object",
        "properties": {
          "$ref": {
            "type": "string",
            "description": "this refers to a JSON Schema definition within the document"
          },
          "name": {
            "type": "string",
            "description": "If 'name' contains absolute JSON path (with '$' at the beginning), it defines the JSON path of the field; otherwise, concatenate \\<path\\>+ \".\" +\\<name\\> to form an absolute JSON path."
          },
          "path": {
            "type": "string",
            "description": "If provided the \\<path\\> + \".\" + \\<name\\> will form a JSONPath string."
          },
          "presence": {
            "type": "string",
            "enum": [
              "required",
              "recommended",
              "conditional",
              "optional"
            ]
          },
          "condition": {
            "type": "string",
            "description": "This refers to a 'id' value of a condition within the document. This field will only be present, if the value in the \"presence\" parameter is \"conditional\""
          }
        }
      },
      "VerifyRecipientDigitalAssetRequest-1": {
        "required": [
          "initiatingPartyId",
          "payoutMethod",
          "recipientDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. Digital Asset\nValid values:\n- \"D\" Visa Direct Digital Asset\n",
            "enum": [
              "D"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "recipientDetail": {
            "required": [
              "digitalAsset",
              "type"
            ],
            "properties": {
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName-1"
                  }
                ],
                "exampleSetFlag": true
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. ISO20022 field name: Creditor Identification Type\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "digitalAsset": {
                "$ref": "#/components/schemas/DigitalAsset-1"
              }
            },
            "exampleSetFlag": false
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountVerificationOnlyRequest-2": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "recipientDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/VerifyRecipientBank"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName-1"
                  }
                ],
                "exampleSetFlag": true
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: \"Creditor Private Identification Code\"\n",
                    "exampleSetFlag": false
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-6"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference-2"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "RecipientContactEmail": {
        "maxLength": 99,
        "minLength": 1,
        "type": "string",
        "description": "Recipient email address. ISO20022 field name - Ultimate Creditor Contact Email Address.",
        "format": "email",
        "example": "jane.doe@example.com"
      },
      "AccountVerificationOnlyRequest-3": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "recipientDetail"
        ],
        "properties": {
          "payoutMethod": {
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ],
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank-5"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName-1"
                  }
                ],
                "exampleSetFlag": true
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type-1"
                  }
                ],
                "exampleSetFlag": false
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName-2"
                  }
                ],
                "exampleSetFlag": false
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: \"Creditor Private Identification Code\"\n",
                    "exampleSetFlag": false
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-7"
                  }
                ],
                "exampleSetFlag": false
              }
            },
            "exampleSetFlag": false,
            "types": [
              "object"
            ]
          },
          "initiatingPartyId": {
            "description": "The ID of the initiating party.",
            "example": "123456",
            "exampleSetFlag": true,
            "types": [
              "string"
            ]
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference-3"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "AccountVerificationOnlyRequest-4": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "type": "object",
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/VerifyRecipientBank-1"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: \"Creditor Private Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-8"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "clientVerificationReference": {
            "$ref": "#/components/schemas/ClientVerificationReference"
          }
        }
      },
      "FundingStatus": {
        "type": "string",
        "description": "Indicates funding status of the payout transaction.\n",
        "enum": [
          "FUNDED",
          "NOT_FUNDED"
        ]
      },
      "RecipientAccountNumber": {
        "maxLength": 34,
        "minLength": 1,
        "type": "string",
        "description": "Account number of the recipient"
      },
      "NetworkResponseSettlementInfo": {
        "type": "object",
        "properties": {
          "givUpdatedFlag": {
            "$ref": "#/components/schemas/GivUpdatedFlag"
          },
          "settlementServiceFlag": {
            "$ref": "#/components/schemas/SettlementServiceFlag"
          },
          "givPreviouslyUpdatedFlag": {
            "$ref": "#/components/schemas/GivPreviouslyUpdatedFlag"
          },
          "settlementResponsibilityFlag": {
            "$ref": "#/components/schemas/SettlementResponsibilityFlag"
          }
        }
      },
      "RecipientTransactorDetail-10": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-10"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-10"
          }
        ]
      },
      "WalletVerificationDetail-2": {
        "required": [
          "accountIdentifierMatch"
        ],
        "properties": {
          "nameMatch": {
            "description": "Indicates if recipient name matches the wallet account name\n- STRONG_MATCH: The recipient name matches the wallet account holder name with high confidence.\n- NO_MATCH: The recipient name does not match the wallet account holder name.    \n- NOT_SUPPORTED: The Wallet Operator does not support name matching functionality.\n",
            "enum": [
              "STRONG_MATCH",
              "NO_MATCH",
              "NOT_SUPPORTED"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "accountIdentifierMatch": {
            "description": "Indicates if the account identifier matches the recipient's wallet account identifier\n- YES: Valid\n- NO: Not valid\n",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "WalletVerificationDetail-1": {
        "required": [
          "accountIdentifierMatch"
        ],
        "type": "object",
        "properties": {
          "nameMatch": {
            "type": "string",
            "description": "Indicates if recipient name matches the wallet account name\n- STRONG_MATCH: The recipient name matches the wallet account holder name with high confidence.\n- NO_MATCH: The recipient name does not match the wallet account holder name.    \n- NOT_SUPPORTED: The Wallet Operator does not support name matching functionality.   \n",
            "enum": [
              "STRONG_MATCH",
              "NO_MATCH",
              "NOT_SUPPORTED"
            ]
          },
          "accountIdentifierMatch": {
            "type": "string",
            "description": "Indicates if the account identifier matches the recipient's wallet account identifier\n- YES: Valid\n- NO: Not valid\n"
          }
        }
      },
      "RecipientTransactorDetail-11": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-11"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany"
          }
        ]
      },
      "NearLimitReachedFlexibleSettlementNotification-1": {
        "required": [
          "accountId",
          "eventType",
          "initiatingPartyId",
          "limitReachedDetails",
          "notificationDateTime"
        ],
        "properties": {
          "accountId": {
            "description": "The accountId uniquely identifies the account as a virtual account number(i.e. VAN), with a value or number assigned by Visa.",
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "eventType": {
            "description": "The type of event that triggered the notification.",
            "enum": [
              "NEAR_LIMIT_REACHED"
            ],
            "exampleSetFlag": false,
            "types": [
              "string"
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "limitReachedDetails": {
            "items": {
              "$ref": "#/components/schemas/NearLimitReachedDetails-1"
            },
            "exampleSetFlag": false,
            "types": [
              "array"
            ]
          },
          "notificationDateTime": {
            "$ref": "#/components/schemas/TimestampType-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "DafIndicator-1": {
        "maxLength": 5,
        "type": "string",
        "description": "An authentication program indicator to identify transactions qualified by the Digital Authentication Framework for requests containing a CAVV and/or TAVV.<br><br>\n<b>Valid Values:</b><br>\n<ul>\n  <li>true</li>\n  <li>false</li>\n</ul>",
        "example": "true"
      },
      "RecipientTransactorDetail-12": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-12"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-11"
          }
        ]
      },
      "MessageReasonCode": {
        "type": "number",
        "description": "<b>Conditional.</b><br>Contains codes that combined with some other fields such as the BAI (Business Application Id) identify some unique use cases. For Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with the businessApplicationId field set to the value 'FD'",
        "example": 123
      },
      "RecipientTransactorDetail-13": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-13"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-12"
          }
        ]
      },
      "RecipientTransactorDetail-14": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-14"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-13"
          }
        ]
      },
      "AcquiringBin": {
        "type": "integer",
        "description": "Bank Identification Number of the acquirer",
        "example": 412345
      },
      "RecipientTransactorDetail-15": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/RecipientIndividual-15"
          },
          {
            "$ref": "#/components/schemas/RecipientCompany-14"
          }
        ]
      },
      "CardQueryTransactionResponse-10": {
        "required": [
          "clientReferenceId",
          "initiatingPartyId",
          "networkResponses",
          "payoutId",
          "status",
          "transactionAmount",
          "transactionCurrencyCode",
          "transactionDateTime"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/200CardQueryStatus"
          },
          "payoutId": {
            "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payouts and Reversals, Chargeback, Response, Advice for to Card. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutId"
              }
            ]
          },
          "networkResponses": {
            "type": "array",
            "description": "The array of 'networkResponses' contains card network's processing details.\n",
            "items": {
              "$ref": "#/components/schemas/NetworkResponses-10"
            }
          },
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-2"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionDateTime": {
            "description": "The time the request was processed by Visa. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/TimestampType"
              }
            ]
          }
        }
      },
      "RetrievalReferenceNumber-1": {
        "maxLength": 12,
        "minLength": 12,
        "pattern": "^\\d{12}$",
        "type": "string",
        "description": "This is a unique identifier generated by the Orignating Entity for a transaction and its one of the key fields for matching a transaction with the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for P2A and Reversals, Chargeback, Response, Advice for P2C. It is also used for duplicate validation check done by Visa.\n\nThe format is recommended to be ydddhhnnnnnn\nyddd - The first four digits must be a valid Julian date format, where the first digit = 0-9 (last digit of current year) and the next three digits = 001-366 (number of the day in the year). \nhh - can be the two digit hour in a 24 hour clock (00-23) during which the transaction is performed. \nnnnnnn - can be the systemsTraceAuditNumber or any 6 digit number\n\nISO20022 field name: Payment Identification - Instruction Identification\n",
        "example": "410721685200"
      },
      "RecipientIsIndividual-10": {
        "required": [
          "type"
        ],
        "properties": {
          "name": {
            "description": "Full name of recipient is conditionally required when \"firstName\" and \"lastName\" are not provided.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>",
            "example": "Joe Smith",
            "allOf": [
              {
                "$ref": "#/components/schemas/IndividualsName"
              }
            ]
          },
          "type": {
            "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company. \n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              }
            ]
          },
          "address": {
            "$ref": "#/components/schemas/RecipientAccountPayoutAddress-15"
          },
          "lastName": {
            "description": "Recipient last name<br>Recipient first name and last name are conditionally required when \"name\" is not provided. The length of first name and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/LastName"
              }
            ]
          },
          "firstName": {
            "description": "Recipient first name(s), include all first (given) names<br>Recipient first name(s) and last name are conditionally required when \"name\" is not provided. The length of first name(s) and last name combined must be at least 3 characters.<br>Must not contain exclusively numeric characters<br>Must not contain special symbols <table>  <tr>  <td>!</td>  <td>\"</td>  <td>£</td>  <td>$</td>  <td>%</td>  <td>^</td>  <td>*</td>  <td>+</td>  <td>=</td>  <td>¬</td>  <td>¦</td>  <td>:</td>  <td>;</td>  <td>@</td>  <td>~</td>  </tr>  </table>\n\nISO20022 field name: Creditor Name\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/FirstName"
              }
            ]
          },
          "cityOfBirth": {
            "description": "Recipient city of birth\n\nISO20022 field name: Creditor City of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/CityOfBirth"
              }
            ]
          },
          "dateOfBirth": {
            "description": "Recipient date of birth (Format: \"YYYY-MM-DD\", e.g. \"1980-02-01\")\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Birth Date\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateOfBirth"
              }
            ]
          },
          "countryOfBirth": {
            "description": "Recipient country of birth\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nFormat: 3-character ISO-3166 (Alpha-3) country code\n\nISO20022 field name: Creditor Country of Birth\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCountryCode"
              }
            ]
          },
          "identificationList": {
            "$ref": "#/components/schemas/IndividualRecipientIdentificationListAccount-3"
          }
        }
      },
      "RecipientIdentificationList": {
        "type": "array",
        "description": "Identification list of recipient",
        "items": {
          "type": "object",
          "properties": {
            "idType": {
              "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdType"
                }
              ]
            },
            "idNumber": {
              "description": "Recipient identification number (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification\" or \"Creditor Organisation Identification\"\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNumber"
                }
              ]
            },
            "idIssueCountry": {
              "description": "Recipient identification issuing country needs to be provided by Originating Entity along with the payment in certain markets. \n\nFormat: 3-character ISO (Alpha-3) country code\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Issuer Country\" or \"Creditor Organisation Identification Issuer Country\"\n",
              "example": "US",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AlphaCountryCode"
                }
              ]
            }
          }
        }
      },
      "MessageReasonCode-1": {
        "type": "number",
        "description": "Contains codes that, when combined with other fields such as businessApplicationId, identify unique use cases. For example, for Sales Tax rebates this field should be populated with the value 5120 (Value-added tax/Sales Tax) along with businessApplicationId set to FD. This field is also required to identify whether a transaction is merchant-initiated. Refer to <a href=\"/request_response_codes#msg_reason_codes\">Message Reason Codes</a><br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must contain a valid Message Reason Code as defined by Visa specifications.</li>\n</ul><br><br>\n<b>Note:</b> Message Reason Code and POS Environment fields are mutually exclusive.",
        "example": 5120
      },
      "DueDateTime-1": {
        "description": "ISO 8601 formatted UTC Timestamp, YYYY-MM-DDThh:mm:ss.sssTZD. TZD is either Z or +/-00:00",
        "format": "date-time",
        "example": "2020-05-05T12:12:12.000Z",
        "exampleSetFlag": true,
        "types": [
          "string"
        ]
      },
      "PayoutNotificationProcessRequest": {
        "required": [
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "$ref": "#/components/schemas/PayoutMethodNotification"
          },
          "transactionDetail": {
            "required": [
              "clientReferenceId",
              "initiatingPartyId",
              "notificationDateTime",
              "payoutId",
              "status"
            ],
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Status of the transaction\n- PAYMENT_RECEIVED: Visa has acknowledged the payout instruction has been received. This event can be repeated when 'fundingStatus' or 'expectedPostingDate' fields change value\n- AWAITING_INFORMATION: PSP is awaiting more information from Originating Entity before transaction can be processed\n- PAYMENT_SENT: The payout has been submitted to the Network partner by PSP. This event can be repeated 'fundingStatus' or 'expectedPostingDate' fields change value\n- PAYMENT_DELIVERED: The payout has been posted to the recipient's account. This status is only applicable for Wallet Payments\nISO20022 field name: Transaction Information And Status - Transaction Status\n",
                "example": "PAYMENT_SENT",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutNotificationRequestStatus"
                  }
                ],
                "enum": [
                  "PAYMENT_RECEIVED",
                  "AWAITING_INFORMATION",
                  "PAYMENT_SENT",
                  "PAYMENT_DELIVERED"
                ]
              },
              "payoutId": {
                "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout\n\nISO20022 field name: Transaction Information And Status - Original Additional Remittance Information\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayoutId"
                  }
                ]
              },
              "endToEndId": {
                "$ref": "#/components/schemas/EndToEndId-1"
              },
              "fundingStatus": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FundingStatus-3"
                  }
                ]
              },
              "reasonDetails": {
                "$ref": "#/components/schemas/ReasonDetails"
              },
              "serviceDetail": {
                "$ref": "#/components/schemas/ServiceDetail-2"
              },
              "clientReferenceId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ClientReferenceId-2"
                  }
                ]
              },
              "initiatingPartyId": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiatingPartyId"
                  }
                ]
              },
              "expectedPostingDate": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ExpectedPostingDate-2"
                  }
                ]
              },
              "notificationDateTime": {
                "$ref": "#/components/schemas/TimestampType"
              },
              "fundsAvailableDateTime": {
                "type": "string",
                "description": "Funds available Date and Time of the payment"
              }
            }
          }
        }
      },
      "PurposeOfPaymentCodes": {
        "title": "PurposeOfPaymentCodes",
        "required": [
          "code",
          "description"
        ],
        "type": "object",
        "properties": {
          "code": {
            "$ref": "#/components/schemas/PurposeOfPayment"
          },
          "description": {
            "maxLength": 140,
            "minLength": 1,
            "type": "string",
            "description": "Description of purpose of payment code.",
            "example": "Salary/payroll"
          },
          "senderCompany": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the sender is a company."
          },
          "recipientCompany": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the recipient is a company."
          },
          "senderIndividual": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the sender is an individual."
          },
          "recipientIndividual": {
            "type": "boolean",
            "description": "Is the purpose of payment code valid if the recipient is an individual."
          }
        }
      },
      "IntegratedCircuitCardData": {
        "maxLength": 255,
        "minLength": 2,
        "type": "string",
        "description": "Integrated circuit card data"
      },
      "PersonDetails-3": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PersonName"
          },
          {
            "$ref": "#/components/schemas/Contact"
          },
          {
            "type": "object",
            "properties": {
              "address": {
                "$ref": "#/components/schemas/Address-3"
              }
            }
          }
        ]
      },
      "PersonDetails-2": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PersonName"
          },
          {
            "$ref": "#/components/schemas/Contact"
          },
          {
            "type": "object",
            "properties": {
              "address": {
                "$ref": "#/components/schemas/Address-2"
              }
            }
          }
        ]
      },
      "PersonDetails-1": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/PersonName"
          },
          {
            "$ref": "#/components/schemas/Contact"
          },
          {
            "type": "object",
            "properties": {
              "address": {
                "$ref": "#/components/schemas/Address-1"
              }
            }
          }
        ]
      },
      "OCTSenderDetailAdditionalData": {
        "anyOf": [
          {
            "title": "localNameData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "localNameData<br><br>This object is used to provide the sender's local name data. This object is required for transactions where the sender's local name data is required."
              },
              "value": {
                "$ref": "#/components/schemas/SenderLocalNameData"
              }
            }
          },
          {
            "title": "contactInformationList",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "contactInformationList<br><br>Contact Information list of sender.<br /><br />Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/ContactInformationList"
              }
            }
          },
          {
            "title": "ancillarySenderDetails",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "ancillarySenderDetails<br><br>Ancillary sender details.<br><br>Note: This information is only applicable for domestic Colombia and Ukraine transactions. For other transactions, if the information is provided, it will be dropped."
              },
              "value": {
                "$ref": "#/components/schemas/AncillarySenderDetails"
              }
            }
          },
          {
            "title": "identificationNumberBusiness",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "identificationNumberBusiness<br><br><b>Conditional.</b><br><br>This is an alphanumeric value that carries the sender's identification number issued to the sender by the government or an authorized national entity. This field is to be used if the sender is a business (e.g. Disbursements) <br><br>Note: If senderIdentificationNumberIndividual is not populated, then this field needs to be populated mandatorily for Brazil domestic transactions."
              },
              "value": {
                "maxLength": 20,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "identificationNumberIndividual",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "identificationNumberIndividual<br><br>This is an alphanumeric value that carries the sender's identification number issued to the sender by the government or an authorized national entity or contains the customer’s VAT registration number for the individual tax identification. This field is to be used if the sender is an Individual (e.g. P2P payments), <br><br>Note: If senderIdentificationNumberBusiness is not populated, then this field needs to be populated mandatorily for Brazil domestic transactions.<br>If businessApplicationId has PS, then this field to be populated for Argentina domestic transaction."
              },
              "value": {
                "maxLength": 13,
                "minLength": 1,
                "type": "string"
              }
            }
          }
        ]
      },
      "RecipientAddress-1": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "City of the recipient's address",
            "example": "San Francisco"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Country code (ISO 3166-1 alpha-3) of the recipient's address",
            "example": "USA"
          },
          "stateCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "2-character abbreviated state code or territory code",
            "example": "CA"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Postal or zip code of the recipient's address",
            "example": "94404"
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "First line of the recipient's address",
            "example": "123 Main St"
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Second line of the recipient's address",
            "example": "Apt 4B"
          },
          "subDivisionMinorCode": {
            "maxLength": 16,
            "minLength": 1,
            "type": "string",
            "description": "Sub-division minor code of recipient's address"
          }
        },
        "description": "Address information of the recipient"
      },
      "MerchantReference": {
        "maxLength": 35,
        "minLength": 1,
        "type": "string",
        "description": "Merchant reference number",
        "example": "MR123456789"
      },
      "AFTRCardAcceptor-1": {
        "required": [
          "id",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Account Funding Transaction Reversal"
      },
      "AFTRCardAcceptor-2": {
        "required": [
          "address",
          "id",
          "name",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId"
          },
          "name": {
            "$ref": "#/components/schemas/CardAcceptorName"
          },
          "address": {
            "$ref": "#/components/schemas/CardAcceptorAddress-2"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId"
          },
          "merchantReference": {
            "$ref": "#/components/schemas/MerchantReference-2"
          },
          "merchantCategoryCode": {
            "$ref": "#/components/schemas/MerchantCategoryCode"
          },
          "visaMerchantIdentifier": {
            "$ref": "#/components/schemas/VisaMerchantIdentifier"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue"
          }
        },
        "description": "Card acceptor details for Account Funding Transaction Reversal"
      },
      "PaymentFacilitatorName": {
        "maxLength": 25,
        "minLength": 1,
        "type": "string",
        "description": "Name of the payment facilitator",
        "example": "Payment Facilitator Inc."
      },
      "AFTRCardAcceptor-3": {
        "required": [
          "id",
          "terminalId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CardAcceptorId-2"
          },
          "terminalId": {
            "$ref": "#/components/schemas/TerminalId-2"
          },
          "merchantVerificationValue": {
            "$ref": "#/components/schemas/MerchantVerificationValue-2"
          }
        },
        "description": "Card acceptor details for Account Funding Transaction Reversal"
      },
      "SettlementServiceIndicator": {
        "maximum": 9,
        "minimum": 0,
        "type": "number",
        "description": "Indicator for settlement service type"
      },
      "PayoutWalletRequest-13": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-8"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-12": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-11": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-3"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-3"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-10": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail"
              }
            ]
          }
        }
      },
      "VerifyRecipientDetailResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WalletVerifyResponse"
          },
          {
            "$ref": "#/components/schemas/AccountVerifyResponse"
          }
        ]
      },
      "DigitalAssetQueryResponse-2": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetQuerySuccessResponse-2"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryPendingCancelledResponse"
          }
        ]
      },
      "ValidateWalletTransactionDetail-8": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-3"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "$ref": "#/components/schemas/StatementNarrative"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "NameValuePair": {
        "required": [
          "name",
          "value"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 35,
            "minLength": 1,
            "type": "string",
            "description": "Name component of the name-value pair for additional data",
            "example": "CustomField1"
          },
          "value": {
            "maxLength": 1000,
            "minLength": 1,
            "type": "string",
            "description": "Value component of the name-value pair for additional data",
            "example": "CustomValue1"
          }
        }
      },
      "DigitalAssetQueryResponse-3": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetQuerySuccessResponse-3"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryErrorResponse-1"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryPendingCancelledResponse"
          }
        ]
      },
      "ValidateWalletTransactionDetail-7": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-2"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-2"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel-1"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-2"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-5"
              }
            ],
            "exampleSetFlag": false
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-3"
              }
            ],
            "exampleSetFlag": false
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidateWalletTransactionDetail-6": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-2"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-4"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "DigitalAssetQueryResponse-1": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalAssetQuerySuccessResponse-1"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryErrorResponse"
          },
          {
            "$ref": "#/components/schemas/DigitalAssetQueryPendingCancelledResponse"
          }
        ]
      },
      "CardEligibilityDetail-1": {
        "required": [
          "billingCurrencyCode",
          "cardPlatformCode",
          "cardTypeCode",
          "issuerCountryCode",
          "issuerName"
        ],
        "type": "object",
        "properties": {
          "issuerName": {
            "maxLength": 240,
            "minLength": 1,
            "type": "string",
            "description": "Name of the issuing institution",
            "example": "VISA TEST BANK"
          },
          "visaNetwork": {
            "required": [
              "comboCardRange",
              "eligibilities"
            ],
            "type": "object",
            "properties": {
              "eligibilities": {
                "required": [
                  "crossBorder",
                  "domestic"
                ],
                "type": "object",
                "properties": {
                  "accountType": {
                    "type": "string",
                    "description": "Type of the account",
                    "example": "CREDIT",
                    "enum": [
                      "DEBIT",
                      "CREDIT"
                    ]
                  },
                  "crossBorder": {
                    "required": [
                      "payin",
                      "payout"
                    ],
                    "type": "object",
                    "properties": {
                      "payin": {
                        "type": "object",
                        "properties": {
                          "enabled": {
                            "maxLength": 1,
                            "minLength": 1,
                            "type": "string",
                            "description": "Indicates if cross-border payin is enabled",
                            "example": "Y"
                          }
                        }
                      },
                      "payout": {
                        "required": [
                          "gambling",
                          "moneyTransfer",
                          "nonMoneyTransfer"
                        ],
                        "type": "object",
                        "properties": {
                          "gambling": {
                            "type": "string",
                            "description": "Cross-border gambling eligibility",
                            "example": "NOT_ENABLED",
                            "enum": [
                              "STANDARD",
                              "FAST_FUNDS",
                              "NOT_ENABLED"
                            ]
                          },
                          "moneyTransfer": {
                            "type": "string",
                            "description": "Cross-border money transfer eligibility",
                            "example": "STANDARD",
                            "enum": [
                              "STANDARD",
                              "FAST_FUNDS",
                              "NOT_ENABLED"
                            ]
                          },
                          "authApprovalInd": {
                            "type": "string",
                            "description": "Authorization approval indicator for cross-border payouts",
                            "example": "READY",
                            "default": "NO_DATA",
                            "enum": [
                              "NO_DATA",
                              "READY",
                              "OPTIMIZED",
                              "NON-OPTIMIZED"
                            ]
                          },
                          "nonMoneyTransfer": {
                            "type": "string",
                            "description": "Cross-border non-money transfer eligibility",
                            "example": "STANDARD",
                            "enum": [
                              "STANDARD",
                              "FAST_FUNDS",
                              "NOT_ENABLED"
                            ]
                          }
                        }
                      },
                      "domestic": {
                        "required": [
                          "payin",
                          "payout"
                        ],
                        "type": "object",
                        "properties": {
                          "payin": {
                            "type": "object",
                            "properties": {
                              "enabled": {
                                "maxLength": 1,
                                "minLength": 1,
                                "type": "string",
                                "description": "Indicates if domestic payin is enabled",
                                "example": "Y"
                              }
                            }
                          },
                          "payout": {
                            "required": [
                              "gambling",
                              "moneyTransfer",
                              "nonMoneyTransfer"
                            ],
                            "type": "object",
                            "properties": {
                              "gambling": {
                                "type": "string",
                                "description": "Domestic gambling eligibility",
                                "example": "NOT_ENABLED",
                                "enum": [
                                  "STANDARD",
                                  "FAST_FUNDS",
                                  "NOT_ENABLED"
                                ]
                              },
                              "moneyTransfer": {
                                "type": "string",
                                "description": "Domestic money transfer eligibility",
                                "example": "FAST_FUNDS",
                                "enum": [
                                  "STANDARD",
                                  "FAST_FUNDS",
                                  "NOT_ENABLED"
                                ]
                              },
                              "nonMoneyTransfer": {
                                "type": "string",
                                "description": "Domestic non-money transfer eligibility",
                                "example": "STANDARD",
                                "enum": [
                                  "STANDARD",
                                  "FAST_FUNDS",
                                  "NOT_ENABLED"
                                ]
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                },
                "description": "Eligibility information for various transaction types"
              },
              "comboCardRange": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "Indicates if the card is a combo card",
                "example": "Y"
              },
              "cardSubTypeCode": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "Code identifying the card subtype",
                "example": "C"
              },
              "geoRestrictionInd": {
                "maxLength": 1,
                "minLength": 1,
                "type": "string",
                "description": "Geographic restrictions indicator",
                "example": "0"
              },
              "prepaidSubTypeCode": {
                "maxLength": 2,
                "minLength": 2,
                "type": "string",
                "description": "Code identifying the prepaid card subtype",
                "example": "PP"
              },
              "accountCurrencyCode": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string",
                "description": "ISO currency code for the card account",
                "example": "USD"
              }
            },
            "description": "Visa network eligibility information"
          },
          "cardTypeCode": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Code identifying the card type",
            "example": "C"
          },
          "nonVisaNetwork": {
            "type": "array",
            "description": "Non-Visa network eligibility information",
            "items": {
              "required": [
                "eligibilities",
                "networkId"
              ],
              "type": "object",
              "properties": {
                "networkId": {
                  "type": "integer",
                  "description": "Identifier for the routing network",
                  "example": 123
                },
                "eligibilities": {
                  "required": [
                    "crossBorder",
                    "domestic"
                  ],
                  "type": "object",
                  "properties": {
                    "domestic": {
                      "required": [
                        "payin",
                        "payout"
                      ],
                      "type": "object",
                      "properties": {
                        "payin": {
                          "maxLength": 1,
                          "minLength": 1,
                          "type": "string",
                          "description": "Domestic payin indicator",
                          "example": "Y"
                        },
                        "payout": {
                          "type": "string",
                          "description": "Domestic payout eligibility",
                          "example": "STANDARD",
                          "enum": [
                            "STANDARD",
                            "FAST_FUNDS",
                            "NOT_ENABLED"
                          ]
                        }
                      }
                    },
                    "gambling": {
                      "maxLength": 1,
                      "minLength": 1,
                      "type": "string",
                      "description": "Gambling eligibility indicator",
                      "example": "Y"
                    },
                    "crossBorder": {
                      "required": [
                        "payin",
                        "payout"
                      ],
                      "type": "object",
                      "properties": {
                        "payin": {
                          "maxLength": 1,
                          "minLength": 1,
                          "type": "string",
                          "description": "Cross-border payin indicator",
                          "example": "Y"
                        },
                        "payout": {
                          "type": "string",
                          "description": "Cross-border payout eligibility",
                          "example": "STANDARD",
                          "enum": [
                            "STANDARD",
                            "FAST_FUNDS",
                            "NOT_ENABLED"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "cardPlatformCode": {
            "maxLength": 2,
            "minLength": 1,
            "type": "string",
            "description": "Code identifying the card platform",
            "example": "P1"
          },
          "issuerCountryCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO country code for the card issuer",
            "example": "USA"
          },
          "billingCurrencyCode": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "ISO currency code for billing",
            "example": "USD"
          },
          "billingCurrencyCodeMinorDigits": {
            "maxLength": 1,
            "minLength": 1,
            "type": "string",
            "description": "Number of minor digits in the billing currency",
            "example": "2"
          }
        },
        "description": "Details about card eligibility for different transaction types across networks"
      },
      "ValidateWalletTransactionDetail-5": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-3"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "PayoutId": {
        "maxLength": 50,
        "minLength": 1,
        "type": "string",
        "description": "This is a globally unique identifier generated by Visa for a payout transaction\n\nISO20022 field name: Transaction Information And Status - Additional Remittance Information\n",
        "example": "5003f6a0-2c44-11b2-aa57-47378ae53313_1"
      },
      "CurrentStatus": {
        "type": "string",
        "description": "Indicates the current status of the currency. Only two values are allowed <br />\nENABLED – payouts in this currency are allowed. <br />\nDISABLED – payouts in this currency are not allowed.\n",
        "example": "ENABLED",
        "enum": [
          "ENABLED",
          "DISABLED"
        ]
      },
      "Address-3": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "City of the sender's address.",
            "example": "Austin"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Country of the sender's address.",
            "example": "CO"
          },
          "stateCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "<b>Conditional</b><br><br>\nSender state or province code.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must be a valid state or province code as per ISO or local standards.</li>\n  <li>Required if senderCountryCode is either 124(CAN) or 840(USA)</li>\n</ul><br><br>\n<b>Note:</b> This field not applicable for domestic Colombia transactions.",
            "example": "CA"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Sender postal code. Optional. This field contains the postal code of the sender's address.<br><br>\n<b>Validation Rules:</b><br>\n<ul>\n  <li>Must not contain special characters other than standard postal code format.</li>\n  <li>For domestic Colombia transactions, the maximum length of this field is 16 characters. For other transactions, the</li>\n  <li>entered value should be between 5 and 10 characters.</li>\n  <li>Required for certain markets or compliance checks.</li>\n</ul>",
            "example": "94105"
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Optional. This field contains the first line of the sender address.<br><br>\n<b>Note:</b> This field is only applicable for domestic Colombia transactions. For other transactions, if the field is provided, it will be dropped.",
            "example": "123 Main Street"
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Optional. This field contains the second line of the sender address.<br><br>\n<b>Note:</b> This field is only applicable for domestic Colombia transactions. For other transactions, if the field is provided, it will be dropped.",
            "example": "Apt 4B"
          }
        }
      },
      "KeyId": {
        "type": "string",
        "description": "VDP Gateway client MLE (Message Level Key) Key-ID used for callback message encryption (if enabled by client)\n",
        "format": "uuid",
        "example": "fffe3feb-3c22-488d-9381-23453289773b"
      },
      "Address-1": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string",
            "description": "City of sender's address"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string",
            "description": "Country of sender's address"
          },
          "stateCode": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string",
            "description": "State code of sender's address"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string",
            "description": "Postal code of sender's address"
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "First line of the recipient's address"
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string",
            "description": "Second line of sender's address"
          }
        }
      },
      "PayoutWalletRequest-19": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-5"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-6"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-3"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-8"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-18": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-4"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-5"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-3"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-7"
              }
            ]
          }
        }
      },
      "Address-2": {
        "type": "object",
        "properties": {
          "city": {
            "maxLength": 25,
            "minLength": 1,
            "type": "string"
          },
          "state": {
            "maxLength": 2,
            "minLength": 2,
            "type": "string"
          },
          "country": {
            "maxLength": 3,
            "minLength": 3,
            "type": "string"
          },
          "postalCode": {
            "maxLength": 10,
            "minLength": 5,
            "type": "string"
          },
          "addressLine1": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string"
          },
          "addressLine2": {
            "maxLength": 99,
            "minLength": 1,
            "type": "string"
          }
        }
      },
      "OCTTransactionDetailAdditionalData": {
        "anyOf": [
          {
            "title": "purchaseIdentifier",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "purchaseIdentifier<br><br>This is the invoice number or some other reference for billing purposes.</br>e.g. For Airtime top up, this should contain the mobile number (MSISDN) that is being topped up."
              },
              "value": {
                "$ref": "#/components/schemas/PurchaseIdentifier"
              }
            }
          },
          {
            "title": "customerReference",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "customerReference<br><br><b>Conditional.</b><br><br>This field contains a value that identifies the customer.<br>This field needs to be populated for Argentina domestic transaction where businessApplicationId is \"PS\"."
              },
              "value": {
                "maxLength": 17,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "secondaryId",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "secondaryId<br><br>secondaryId is used for C2B use case in the CEMEA region where payee initiates the OCT to the payer. The merchant or acquirer may use this field to obtain an Agreement Id in order to process the request."
              },
              "value": {
                "maxLength": 28,
                "minLength": 1,
                "type": "string"
              }
            }
          },
          {
            "title": "sourceAmount",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "sourceAmount<br><br><b>Conditional.<b><br><br>Source Amount is required in certain markets to identify the transaction amount entered in the sender's currency code prior to FX conversion by the originating entity."
              },
              "value": {
                "type": "number"
              }
            }
          },
          {
            "title": "sourceCurrencyCode",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "sourceCurrencyCode<br><br><b>Conditional.<b><br><br>3-digit numeric or 3-character alpha ISO currency code for currency of the sourceAmount field. <br><br>Refer to <a href=\"/request_response_codes#iso_country_and_currency_codes\">ISO Codes</a> "
              },
              "value": {
                "maxLength": 3,
                "minLength": 3,
                "type": "string"
              }
            }
          },
          {
            "title": "vauFlag",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "vauFlag<br><br>Possible values are : Y (replacement occurred). N (No replacements)"
              },
              "value": {
                "type": "string"
              }
            }
          },
          {
            "title": "argentinaNationalServiceData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "argentinaNationalServiceData<br><br>Settlement Service Data object for Argentina required if transaction indicates Argentina national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/ArgentinaNationalServiceData"
              }
            }
          },
          {
            "title": "mexicoNationalServiceData",
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "mexicoNationalServiceData<br><br>Settlement Service Data object for Mexico required if transaction indicates Mexico national settlement."
              },
              "value": {
                "$ref": "#/components/schemas/MexicoNationalServiceData"
              }
            }
          }
        ]
      },
      "PayoutWalletRequest-17": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-3"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-3"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-3"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-6"
              }
            ]
          }
        }
      },
      "ValidateWalletTransactionDetail-4": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-2"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-3"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed-1"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel-1"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-2"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-5"
              }
            ],
            "exampleSetFlag": false
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "statementNarrative": {
            "$ref": "#/components/schemas/StatementNarrative-3"
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "ValidateWalletTransactionDetail-3": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-2"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-3"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-2"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-2"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-2"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "PayoutWalletRequest-16": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountWalletPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletSenderIdentificationList"
                  }
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletSenderTransactorDetail-1"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-1"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletRecipientIdentificationList-1"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletRecipientTransactorDetail-2"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-15": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress-2"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name: Ultimate Debtor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-2"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList-4"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-4"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-2"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456 \n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-2"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: Creditor Identification Code\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList-4"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-5"
              }
            ]
          }
        }
      },
      "ValidateWalletTransactionDetail-2": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId-1"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId-1"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData-1"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment-2"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to beneficiary's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Payouts Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative-1"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-1"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "ValidateWalletTransactionDetail-1": {
        "required": [
          "businessApplicationId",
          "endToEndId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "quoteId": {
            "$ref": "#/components/schemas/QuoteId"
          },
          "endToEndId": {
            "$ref": "#/components/schemas/EndToEndId"
          },
          "payoutSpeed": {
            "$ref": "#/components/schemas/PayoutSpeed"
          },
          "fundingModel": {
            "$ref": "#/components/schemas/FundingModel"
          },
          "additionalData": {
            "$ref": "#/components/schemas/TransactionalAdditionalData"
          },
          "purposeOfPayment": {
            "description": "Purpose of payment is required in certain markets to clearly identify the purpose of the payment based on the standard values defined for respective market\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\nISO20022 field name: Purpose of Payment\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PurposeOfPayment"
              }
            ]
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId"
              }
            ]
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "statementNarrative": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StatementNarrative"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "senderBeneficiaryRelationship": {
            "$ref": "#/components/schemas/BeneficiaryRelationship"
          }
        }
      },
      "PayoutWalletRequest-14": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod-2"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountWalletPayoutAddress-1"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447809713678\n",
                "example": 447700123456,
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Sender identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletSenderIdentificationList"
                  }
                ]
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber-2"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber-2"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletSenderTransactorDetail"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet-1"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber-1"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData-1"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountWalletRecipientIdentificationList-1"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountWalletRecipientTransactorDetail-1"
              }
            ]
          }
        }
      },
      "DigitalAssetWalletTransactionDetail-3": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "type": "object",
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount"
              }
            ]
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode"
              }
            ]
          }
        }
      },
      "PayoutWalletRequest-22": {
        "required": [
          "payoutMethod",
          "recipientDetail",
          "senderDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "description": "Originating Entity must indicate the payout method i.e. To Account or Wallet\n\nValid values:\n“W” – Visa Direct Wallet\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutMethod"
              }
            ]
          },
          "senderDetail": {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "$ref": "#/components/schemas/SenderAccountPayoutAddress"
              },
              "contactEmail": {
                "description": "Sender email address\n\nISO20022 field name:<br>For 4th  party payments: \"Ultimate Debtor Contact Email Address\" <br>For 3rd party payments:\"Debtor Contact Email Address\"\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Sender contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/SenderAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "$ref": "#/components/schemas/SenderIdentificationList"
              },
              "senderAccountNumber": {
                "$ref": "#/components/schemas/SenderAccountNumber"
              },
              "senderReferenceNumber": {
                "$ref": "#/components/schemas/SenderReferenceNumber"
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/SenderTransactorDetail-9"
              }
            ]
          },
          "recipientDetail": {
            "required": [
              "wallet"
            ],
            "properties": {
              "wallet": {
                "$ref": "#/components/schemas/Wallet"
              },
              "contactEmail": {
                "description": "Recipient email address\n\nISO20022 field name: Ultimate Creditor Contact Email Address\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactEmail"
                  }
                ]
              },
              "contactNumber": {
                "description": "Recipient contact number\n+ symbol followed by digits, no other symbols, e.g. +447700123456\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactNumber"
                  }
                ]
              },
              "additionalData": {
                "$ref": "#/components/schemas/RecipientAdditionalData"
              },
              "contactNumberType": {
                "type": "string",
                "enum": [
                  "MOBILE",
                  "WORK",
                  "HOME"
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets. \n\nValid values : \n* P- Passport \n* D-Driving License \n* N-National Id \n* T-Tax Id \n* L-Legal Entity Registration Number \n* F-Foreign Id\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n\nISO20022 field name: \"Creditor Private Identification Code\" or \"Creditor Organisation Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RecipientTransactorDetail-11"
              }
            ]
          }
        }
      },
      "AccountVerificationOnlyRequest-1": {
        "required": [
          "clientVerificationReference",
          "initiatingPartyId",
          "recipientDetail"
        ],
        "type": "object",
        "properties": {
          "payoutMethod": {
            "type": "string",
            "description": "Method of payout. For accounts, this should be 'B'.",
            "example": "B",
            "enum": [
              "B"
            ]
          },
          "recipientDetail": {
            "required": [
              "bank",
              "type"
            ],
            "type": "object",
            "properties": {
              "bank": {
                "$ref": "#/components/schemas/Bank"
              },
              "name": {
                "description": "Full name of recipient, conditionally required when firstName and lastName are not provided.",
                "example": "Joe Smith",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/IndividualsName"
                  }
                ]
              },
              "type": {
                "description": "Identifies the type of recipient - \"I\" for Individual and \"C\" for Company.\n\nISO20022 field name: Creditor Identification Type       \n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Type"
                  }
                ]
              },
              "lastName": {
                "description": "Recipient last name, conditionally required when name is not provided. ISO20022 field name: Creditor Last Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LastName"
                  }
                ]
              },
              "firstName": {
                "description": "Recipient first name(s), include all first (given) names. Conditionally required when name is not provided. <br /> ISO20022 field name: Creditor First Name\n",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FirstName"
                  }
                ]
              },
              "identificationList": {
                "properties": {
                  "idType": {
                    "description": "Recipient identification type (issued by a government or similar authority) needs to be provided by Originating Entity along with the payment in certain markets.  Valid values :  * P- Passport  * D-Driving License  * N-National Id  * T-Tax Id  * L-Legal Entity Registration Number  * F-Foreign Id\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths) ISO20022 field name: \"Creditor Private Identification Code\"\n"
                  }
                },
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RecipientIdentificationList"
                  }
                ]
              }
            }
          },
          "initiatingPartyId": {
            "type": "string",
            "description": "The ID of the initiating party.",
            "example": "123456"
          },
          "clientVerificationReference": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClientVerificationReference"
              }
            ]
          }
        }
      },
      "OCTRequestData-10": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-4"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-4"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-5"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-9"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTRequestData-11": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-11"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTRequestData-12": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-5"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-2"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-6"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-12"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTRequestData-13": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-6"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-2"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-7"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-13"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "DigitalAssetWalletTransactionDetail-1": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-4"
          },
          "initiatingPartyId": {
            "$ref": "#/components/schemas/InitiatingPartyId-3"
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "OCTRequestData-14": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-7"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-2"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-8"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-14"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "DigitalAssetWalletTransactionDetail-2": {
        "required": [
          "businessApplicationId",
          "clientReferenceId",
          "initiatingPartyId",
          "transactionAmount",
          "transactionCurrencyCode"
        ],
        "properties": {
          "clientReferenceId": {
            "$ref": "#/components/schemas/ClientReferenceId-4"
          },
          "initiatingPartyId": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InitiatingPartyId-3"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionAmount": {
            "description": "The amount to debit from merchant's funding account or credit to recipient's bank account.\nNote: Transaction amount can have decimal point for currencies that allow it. Refer to the Visa Direct Endpoint Guide for Payout on country-specific currency minor units. \nExample: Currency exponent for USD is 2, the amount is $100.99. Currency exponent for JPY is 0. If the amount is JPY 10,000, then this field should populate “10000”.\nISO20022 field name: Instructed Amount\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/Amount-1"
              }
            ],
            "exampleSetFlag": false
          },
          "senderSourceOfFunds": {
            "$ref": "#/components/schemas/SourceOfFunds-3"
          },
          "businessApplicationId": {
            "$ref": "#/components/schemas/BusinessApplicationId-5"
          },
          "settlementCurrencyCode": {
            "description": "The settlement currency code\nThe 3-character ISO-4217 code in this field reflects the currency for the Settlement amount to be debited from Originating Entity/Visa Client's funding account.\nFormat: 3-character ISO-4217 (Alpha-3) currency code\n\n<b>This field is mandatory</b>\n\nExample: GBP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          },
          "transactionCurrencyCode": {
            "description": "The 3-character ISO-4217 code in this field reflects the currency associated to the transaction amount. \nFormat: 3-character ISO-4217 (Alpha-3) currency code\nExample: PHP\n",
            "allOf": [
              {
                "$ref": "#/components/schemas/AlphaCurrencyCode-2"
              }
            ],
            "exampleSetFlag": false
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      },
      "OCTRequestData-15": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-8"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-2"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-9"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-15"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTRequestData-16": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-16"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "OCTRequestData-18": {
        "required": [
          "originatorDetail",
          "recipientDetail",
          "senderDetail",
          "transactionDetail"
        ],
        "type": "object",
        "properties": {
          "senderDetail": {
            "$ref": "#/components/schemas/OCTSenderDetail-9"
          },
          "recipientDetail": {
            "$ref": "#/components/schemas/OCTRecipientDetail-11"
          },
          "originatorDetail": {
            "$ref": "#/components/schemas/OCTOriginatorDetail-11"
          },
          "transactionDetail": {
            "$ref": "#/components/schemas/OCTTransactionDetail-18"
          }
        },
        "description": "Original Credit Transaction (OCT) request data structure"
      },
      "SenderAdditionalData-1": {
        "type": "array",
        "description": "Additional fields that are needed in order to complete the additional screening. The additional fields can be included as name value pairs (Field name, Field value)",
        "items": {
          "required": [
            "name",
            "value"
          ],
          "type": "object",
          "properties": {
            "name": {
              "description": "Originating Entity to send additional sender information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the name component of the name-value pair.\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataName"
                }
              ]
            },
            "value": {
              "description": "Originating Entity to send additional sender information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the value  component of the name-value pair.\n\nConditional (Refer to Payouts Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataValue"
                }
              ]
            }
          }
        }
      },
      "SenderAdditionalData-2": {
        "description": "Additional fields that are needed in order to complete the additional screening. The additional fields can be included as name value pairs (Field name, Field value)",
        "items": {
          "required": [
            "name",
            "value"
          ],
          "properties": {
            "name": {
              "description": "Originating Entity to send additional sender information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the name component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataName-1"
                }
              ],
              "exampleSetFlag": false
            },
            "value": {
              "description": "Originating Entity to send additional sender information needed in order to process the payment. The additional fields can be included as name value pairs (Field name, Field value). This field represents the value  component of the name-value pair.\n\nConditional (Refer to Visa Direct Endpoint Guide on country-specific required fields and lengths)\n",
              "allOf": [
                {
                  "$ref": "#/components/schemas/AdditionalDataValue-1"
                }
              ],
              "exampleSetFlag": false
            }
          },
          "exampleSetFlag": false,
          "types": [
            "object"
          ]
        },
        "exampleSetFlag": false,
        "types": [
          "array"
        ]
      },
      "LimitReachedDetails-1": {
        "required": [
          "currencyCode",
          "flexibleAmountLimit"
        ],
        "properties": {
          "currencyCode": {
            "$ref": "#/components/schemas/AlphaCurrencyCode-2"
          },
          "flexibleAmountLimit": {
            "$ref": "#/components/schemas/FlexibleAmountLimit-1"
          }
        },
        "exampleSetFlag": false,
        "types": [
          "object"
        ]
      }
    },
    "responses": {
      "QueryWalletResponse-13": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/WalletQueryOnlyResponse-13"
            }
          }
        }
      },
      "QueryWalletResponse-12": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/WalletQueryOnlyResponse-12"
                }
              ],
              "exampleSetFlag": false
            }
          }
        }
      },
      "QueryWalletResponse-11": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/WalletQueryOnlyResponse-11"
            }
          }
        }
      },
      "GetAccountBalanceResponse": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a list of balances for all the currencies the merchant may have or has transacted with.\n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "202CreatedResponse": {
        "description": "Transaction is accepted and will be processed & notified status.",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "transactionDetail"
              ],
              "properties": {
                "transactionDetail": {
                  "required": [
                    "payoutId"
                  ],
                  "type": "object",
                  "properties": {
                    "payoutId": {
                      "$ref": "#/components/schemas/PayoutId"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "AFTResponse": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTResponseData"
            }
          }
        }
      },
      "AFTResponse-4": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTResponseData-4"
            }
          }
        }
      },
      "AFTResponse-3": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTResponseData-3"
            }
          }
        }
      },
      "AFTResponse-2": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTResponseData-2"
            }
          }
        }
      },
      "403ErrorResponse-7": {
        "description": "Request is forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-4"
            }
          }
        }
      },
      "AFTResponse-1": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTResponseData-1"
            }
          }
        }
      },
      "403ErrorResponse-5": {
        "description": "Request is forbidden",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-1"
            }
          }
        }
      },
      "404ErrorResponse-1": {
        "description": "Resource not found",
        "content": {
          "application/problem+json": {}
        }
      },
      "403ErrorResponse-6": {
        "description": "Request is forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/403ErrorResponseWithKey-1"
            }
          }
        }
      },
      "403ErrorResponse-3": {
        "description": "Request is forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-2"
            }
          }
        }
      },
      "403ErrorResponse-4": {
        "description": "Request is forbidden",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/403ErrorResponseWithKey"
            }
          }
        }
      },
      "403ErrorResponse-1": {
        "description": "Request is forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey"
            }
          }
        }
      },
      "403ErrorResponse-2": {
        "description": "Request is forbidden",
        "content": {
          "application/problem+json": {
            "schema": {
              "type": "object",
              "properties": {
                "errorResponse": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ErrorResponse-1"
                    }
                  ]
                }
              }
            }
          }
        }
      },
      "AFTResponse-11": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTResponseData-11"
            }
          }
        }
      },
      "AFTResponse-6": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTResponseData-6"
            }
          }
        }
      },
      "QueryAccountResponse-14": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AccountQueryOnlyResponse-14"
            }
          }
        }
      },
      "QueryAccountResponse-15": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryOnlyResponse-15"
                }
              ],
              "exampleSetFlag": false
            }
          }
        }
      },
      "QueryAccountResponse-13": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryOnlyResponse-13"
                }
              ]
            }
          }
        }
      },
      "QueryAccountResponse-16": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AccountQueryOnlyResponse-16"
            }
          }
        }
      },
      "GetAccountWalletMetadataResponse": {
        "description": "Returns the metadata of rules and conditions of the request (e.g. product, corridor).\n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Combined"
            }
          }
        }
      },
      "GetMetaDataResponse-4": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.   \n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData-1"
            },
            "examples": {
              "GetMetadaResponse": {
                "value": {
                  "recipientDetail": {
                    "identityGroups": [
                      {
                        "groupName": "name",
                        "mandatory": true,
                        "groupLabel": "Recipient name details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The first name of the recipient",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first name of the recipient",
                            "displaySize": 35,
                            "elementName": "firstName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The last name of the recipient",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the family name of the recipient",
                            "displaySize": 35,
                            "elementName": "lastName",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "legalEntityIdentity",
                        "mandatory": true,
                        "groupLabel": "Legal Entity Identity",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Name of the company",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the name of the recipient company",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Registration number of the company",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the registration number of the recipient company",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Company registration ISO country",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code where recipient company is registered",
                            "displaySize": 2,
                            "elementName": "country"
                          }
                        ]
                      },
                      {
                        "groupName": "bank",
                        "mandatory": true,
                        "groupLabel": "Bank details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Bank Name",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the Bank Name",
                            "displaySize": 30,
                            "elementName": "bankName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Account Holder",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Account Holders Name",
                            "displaySize": 35,
                            "elementName": "accountName"
                          },
                          {
                            "locale": "en",
                            "maxSize": 34,
                            "subTitle": "Account",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Account Number",
                            "displaySize": 8,
                            "elementName": "accountNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Currency Code",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account currency code",
                            "displaySize": 3,
                            "elementName": "currencyCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Branch Code",
                            "tabOrder": 5,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account branch code",
                            "displaySize": 12,
                            "elementName": "branchCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Country Code",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "this element contains ISO3166 country code (Alpha-3)",
                            "displaySize": 3,
                            "elementName": "countryCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Bank Code",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Bank Code",
                            "displaySize": 12,
                            "elementName": "bankCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 8,
                            "subTitle": "Account Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Checking",
                                "value": "1"
                              },
                              {
                                "label": "Savings",
                                "value": "2"
                              },
                              {
                                "label": "Loan",
                                "value": "5"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Select the Account Type",
                            "displaySize": 8,
                            "elementName": "accountType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 7,
                            "subTitle": "Account Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "IBAN",
                                "value": "IBAN"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account number type. Valid values: 'IBAN' and 'DEFAULT'",
                            "displaySize": 7,
                            "elementName": "accountNumberType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 9,
                            "subTitle": "Bank Code Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "ABARouting",
                                "value": "ABA"
                              },
                              {
                                "label": "SORT_CODE",
                                "value": "SORT_CODE"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account - bank code type. Valid values: 'DEFAULT', 'ABA' and 'SORT_CODE'",
                            "displaySize": 9,
                            "elementName": "bankCodeType"
                          }
                        ]
                      },
                      {
                        "groupName": "address",
                        "mandatory": false,
                        "groupLabel": "Address details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "First line of address of recipient",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine1",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Second line of address of recipient",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the second line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine2",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "City of residency of recipient",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the city of residency of recipient",
                            "displaySize": 35,
                            "elementName": "city",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 25,
                            "subTitle": "State of residency of recipient",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the state of residency of recipient",
                            "displaySize": 25,
                            "elementName": "state",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Postal Code of residency of recipient",
                            "tabOrder": 8,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the Postal Code of residency of recipient",
                            "displaySize": 10,
                            "elementName": "postalCode",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO county of residency of recipient",
                            "tabOrder": 9,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the ISO county code of residency of recipient",
                            "displaySize": 3,
                            "elementName": "country",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "contactInfo",
                        "mandatory": true,
                        "groupLabel": "Contact Information",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Contact Number",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number of recipient. Symbol + followed by digits, no other symbols, e.g. something like +447700123456 (note, refer ISO spec E.164)",
                            "displaySize": 16,
                            "elementName": "contactNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 210,
                            "subTitle": "Contact Email",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Contact email of recipient",
                            "displaySize": 50,
                            "elementName": "contactEmail"
                          },
                          {
                            "locale": "en",
                            "maxSize": 6,
                            "subTitle": "Contact Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "MOBILE",
                                "value": "MOBILE"
                              },
                              {
                                "label": "HOME",
                                "value": "HOME"
                              },
                              {
                                "label": "WORK",
                                "value": "WORK"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number Type can be 'MOBILE', 'WORK','HOME' ",
                            "displaySize": 6,
                            "elementName": "contactNumberType"
                          }
                        ]
                      },
                      {
                        "groupName": "identificationList",
                        "mandatory": false,
                        "groupLabel": "Identification details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 1,
                            "subTitle": "Identification information of recipient",
                            "tabOrder": 10,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Passport",
                                "value": "P"
                              },
                              {
                                "label": "National ID Card",
                                "value": "N"
                              },
                              {
                                "label": "Driving License",
                                "value": "D"
                              }
                            ],
                            "mandatory": true,
                            "description": "Enter one of the identification information of recipient",
                            "displaySize": 5,
                            "elementName": "idType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Identifier value of the document",
                            "tabOrder": 11,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the identifier value of the recipient document",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO country of issue of the identification document",
                            "tabOrder": 12,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of issue of the recipient identification document",
                            "displaySize": 3,
                            "elementName": "idIssueCountry"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validFromDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validFromDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "value"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validToDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validToDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      },
                      {
                        "groupName": "birthInfo",
                        "mandatory": false,
                        "groupLabel": "birth information of recipient",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 10,
                            "subTitle": "The date of birth of the recipient",
                            "tabOrder": 15,
                            "inputType": "date",
                            "mandatory": true,
                            "description": "Enter the date of birth of the recipient",
                            "displaySize": 10,
                            "elementName": "dateOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The city of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": false,
                            "description": "Enter the city of birth of the recipient",
                            "displaySize": 35,
                            "elementName": "cityOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "The ISO country of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of birth of the recipient",
                            "displaySize": 3,
                            "elementName": "countryOfBirth"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 18,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 19,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      }
                    ]
                  },
                  "transactionDetail": {
                    "purposeOfPayment": {
                      "mandatory": true,
                      "purposeOfPaymentCodes": [
                        {
                          "code": "TAX",
                          "description": "Tax",
                          "senderIndividual": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MOR",
                          "description": "Mortgage",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MIS",
                          "description": "Miscellaneous",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "SAL",
                          "description": "Salary/payroll",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "LOA",
                          "description": "Loan",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "BUS",
                          "description": "Business/commercial payment",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "DEP",
                          "description": "Deposit",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "PEN",
                          "description": "Pension",
                          "recipientCompany": true,
                          "senderIndividual": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "GetMetaDataResponse-3": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.   \n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData-3"
            },
            "examples": {
              "GetMetadaResponse": {
                "value": {
                  "recipientDetail": {
                    "identityGroups": [
                      {
                        "groupName": "name",
                        "mandatory": true,
                        "groupLabel": "Recipient name details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The first name of the recipient",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first name of the recipient",
                            "displaySize": 35,
                            "elementName": "firstName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The last name of the recipient",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the family name of the recipient",
                            "displaySize": 35,
                            "elementName": "lastName",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "legalEntityIdentity",
                        "mandatory": true,
                        "groupLabel": "Legal Entity Identity",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Name of the company",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the name of the recipient company",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Registration number of the company",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the registration number of the recipient company",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Company registration ISO country",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code where recipient company is registered",
                            "displaySize": 2,
                            "elementName": "country"
                          }
                        ]
                      },
                      {
                        "groupName": "bank",
                        "mandatory": true,
                        "groupLabel": "Bank details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Bank Name",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the Bank Name",
                            "displaySize": 30,
                            "elementName": "bankName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Account Holder",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Account Holders Name",
                            "displaySize": 35,
                            "elementName": "accountName"
                          },
                          {
                            "locale": "en",
                            "maxSize": 34,
                            "subTitle": "Account",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Account Number",
                            "displaySize": 8,
                            "elementName": "accountNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Currency Code",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account currency code",
                            "displaySize": 3,
                            "elementName": "currencyCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Branch Code",
                            "tabOrder": 5,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account branch code",
                            "displaySize": 12,
                            "elementName": "branchCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Country Code",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "this element contains ISO3166 country code (Alpha-3)",
                            "displaySize": 3,
                            "elementName": "countryCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Bank Code",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Bank Code",
                            "displaySize": 12,
                            "elementName": "bankCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 8,
                            "subTitle": "Account Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Checking",
                                "value": "1"
                              },
                              {
                                "label": "Savings",
                                "value": "2"
                              },
                              {
                                "label": "Loan",
                                "value": "5"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Select the Account Type",
                            "displaySize": 8,
                            "elementName": "accountType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 7,
                            "subTitle": "Account Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "IBAN",
                                "value": "IBAN"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account number type. Valid values: 'IBAN' and 'DEFAULT'",
                            "displaySize": 7,
                            "elementName": "accountNumberType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 9,
                            "subTitle": "Bank Code Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "ABARouting",
                                "value": "ABA"
                              },
                              {
                                "label": "SORT_CODE",
                                "value": "SORT_CODE"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account - bank code type. Valid values: 'DEFAULT', 'ABA' and 'SORT_CODE'",
                            "displaySize": 9,
                            "elementName": "bankCodeType"
                          }
                        ]
                      },
                      {
                        "groupName": "address",
                        "mandatory": false,
                        "groupLabel": "Address details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "First line of address of recipient",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine1",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Second line of address of recipient",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the second line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine2",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "City of residency of recipient",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the city of residency of recipient",
                            "displaySize": 35,
                            "elementName": "city",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 25,
                            "subTitle": "State of residency of recipient",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the state of residency of recipient",
                            "displaySize": 25,
                            "elementName": "state",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Postal Code of residency of recipient",
                            "tabOrder": 8,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the Postal Code of residency of recipient",
                            "displaySize": 10,
                            "elementName": "postalCode",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO county of residency of recipient",
                            "tabOrder": 9,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the ISO county code of residency of recipient",
                            "displaySize": 3,
                            "elementName": "country",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "contactInfo",
                        "mandatory": true,
                        "groupLabel": "Contact Information",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Contact Number",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number of recipient. Symbol + followed by digits, no other symbols, e.g. something like +447809713678 (note, refer ISO spec E.164)",
                            "displaySize": 16,
                            "elementName": "contactNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 210,
                            "subTitle": "Contact Email",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Contact email of recipient",
                            "displaySize": 50,
                            "elementName": "contactEmail"
                          },
                          {
                            "locale": "en",
                            "maxSize": 6,
                            "subTitle": "Contact Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "MOBILE",
                                "value": "MOBILE"
                              },
                              {
                                "label": "HOME",
                                "value": "HOME"
                              },
                              {
                                "label": "WORK",
                                "value": "WORK"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number Type can be 'MOBILE', 'WORK','HOME' ",
                            "displaySize": 6,
                            "elementName": "contactNumberType"
                          }
                        ]
                      },
                      {
                        "groupName": "identificationList",
                        "mandatory": false,
                        "groupLabel": "Identification details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 1,
                            "subTitle": "Identification information of recipient",
                            "tabOrder": 10,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Passport",
                                "value": "P"
                              },
                              {
                                "label": "National ID Card",
                                "value": "N"
                              },
                              {
                                "label": "Driving License",
                                "value": "D"
                              }
                            ],
                            "mandatory": true,
                            "description": "Enter one of the identification information of recipient",
                            "displaySize": 5,
                            "elementName": "idType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Identifier value of the document",
                            "tabOrder": 11,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the identifier value of the recipient document",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO country of issue of the identification document",
                            "tabOrder": 12,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of issue of the recipient identification document",
                            "displaySize": 3,
                            "elementName": "idIssueCountry"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validFromDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validFromDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "value"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validToDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validToDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      },
                      {
                        "groupName": "birthInfo",
                        "mandatory": false,
                        "groupLabel": "birth information of recipient",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 10,
                            "subTitle": "The date of birth of the recipient",
                            "tabOrder": 15,
                            "inputType": "date",
                            "mandatory": true,
                            "description": "Enter the date of birth of the recipient",
                            "displaySize": 10,
                            "elementName": "dateOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The city of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": false,
                            "description": "Enter the city of birth of the recipient",
                            "displaySize": 35,
                            "elementName": "cityOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "The ISO country of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of birth of the recipient",
                            "displaySize": 3,
                            "elementName": "countryOfBirth"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 18,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 19,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      }
                    ]
                  },
                  "transactionDetail": {
                    "purposeOfPayment": {
                      "mandatory": true,
                      "purposeOfPaymentCodes": [
                        {
                          "code": "TAX",
                          "description": "Tax",
                          "senderIndividual": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MOR",
                          "description": "Mortgage",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MIS",
                          "description": "Miscellaneous",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "SAL",
                          "description": "Salary/payroll",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "LOA",
                          "description": "Loan",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "BUS",
                          "description": "Business/commercial payment",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "DEP",
                          "description": "Deposit",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "PEN",
                          "description": "Pension",
                          "recipientCompany": true,
                          "senderIndividual": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "GetMetaDataResponse-6": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.\n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData-6"
            },
            "examples": {
              "GetMetadaResponse": {
                "value": {
                  "recipientDetail": {
                    "identityGroups": [
                      {
                        "groupName": "name",
                        "mandatory": true,
                        "groupLabel": "Recipient name details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The first name of the recipient",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first name of the recipient",
                            "displaySize": 35,
                            "elementName": "firstName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The last name of the recipient",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the family name of the recipient",
                            "displaySize": 35,
                            "elementName": "lastName",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "legalEntityIdentity",
                        "mandatory": true,
                        "groupLabel": "Legal Entity Identity",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Name of the company",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the name of the recipient company",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Registration number of the company",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the registration number of the recipient company",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Company registration ISO country",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code where recipient company is registered",
                            "displaySize": 2,
                            "elementName": "country"
                          }
                        ]
                      },
                      {
                        "groupName": "bank",
                        "mandatory": true,
                        "groupLabel": "Bank details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Bank Name",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the Bank Name",
                            "displaySize": 30,
                            "elementName": "bankName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Account Holder",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Account Holders Name",
                            "displaySize": 35,
                            "elementName": "accountName"
                          },
                          {
                            "locale": "en",
                            "maxSize": 34,
                            "subTitle": "Account",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Account Number",
                            "displaySize": 8,
                            "elementName": "accountNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Currency Code",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account currency code",
                            "displaySize": 3,
                            "elementName": "currencyCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Branch Code",
                            "tabOrder": 5,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account branch code",
                            "displaySize": 12,
                            "elementName": "branchCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Country Code",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "this element contains ISO3166 country code (Alpha-3)",
                            "displaySize": 3,
                            "elementName": "countryCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Bank Code",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Bank Code",
                            "displaySize": 12,
                            "elementName": "bankCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 8,
                            "subTitle": "Account Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Checking",
                                "value": "1"
                              },
                              {
                                "label": "Savings",
                                "value": "2"
                              },
                              {
                                "label": "Loan",
                                "value": "5"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Select the Account Type",
                            "displaySize": 8,
                            "elementName": "accountType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 7,
                            "subTitle": "Account Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "IBAN",
                                "value": "IBAN"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account number type. Valid values: 'IBAN' and 'DEFAULT'",
                            "displaySize": 7,
                            "elementName": "accountNumberType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 9,
                            "subTitle": "Bank Code Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "ABARouting",
                                "value": "ABA"
                              },
                              {
                                "label": "SORT_CODE",
                                "value": "SORT_CODE"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account - bank code type. Valid values: 'DEFAULT', 'ABA' and 'SORT_CODE'",
                            "displaySize": 9,
                            "elementName": "bankCodeType"
                          }
                        ]
                      },
                      {
                        "groupName": "address",
                        "mandatory": false,
                        "groupLabel": "Address details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "First line of address of recipient",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine1",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Second line of address of recipient",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the second line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine2",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "City of residency of recipient",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the city of residency of recipient",
                            "displaySize": 35,
                            "elementName": "city",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 25,
                            "subTitle": "State of residency of recipient",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the state of residency of recipient",
                            "displaySize": 25,
                            "elementName": "state",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Postal Code of residency of recipient",
                            "tabOrder": 8,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the Postal Code of residency of recipient",
                            "displaySize": 10,
                            "elementName": "postalCode",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO county of residency of recipient",
                            "tabOrder": 9,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the ISO county code of residency of recipient",
                            "displaySize": 3,
                            "elementName": "country",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "contactInfo",
                        "mandatory": true,
                        "groupLabel": "Contact Information",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Contact Number",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number of recipient. Symbol + followed by digits, no other symbols, e.g. something like +447700123456 (note, refer ISO spec E.164)",
                            "displaySize": 16,
                            "elementName": "contactNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 210,
                            "subTitle": "Contact Email",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Contact email of recipient",
                            "displaySize": 50,
                            "elementName": "contactEmail"
                          },
                          {
                            "locale": "en",
                            "maxSize": 6,
                            "subTitle": "Contact Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "MOBILE",
                                "value": "MOBILE"
                              },
                              {
                                "label": "HOME",
                                "value": "HOME"
                              },
                              {
                                "label": "WORK",
                                "value": "WORK"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number Type can be 'MOBILE', 'WORK','HOME' ",
                            "displaySize": 6,
                            "elementName": "contactNumberType"
                          }
                        ]
                      },
                      {
                        "groupName": "identificationList",
                        "mandatory": false,
                        "groupLabel": "Identification details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 1,
                            "subTitle": "Identification information of recipient",
                            "tabOrder": 10,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Passport",
                                "value": "P"
                              },
                              {
                                "label": "National ID Card",
                                "value": "N"
                              },
                              {
                                "label": "Driving License",
                                "value": "D"
                              }
                            ],
                            "mandatory": true,
                            "description": "Enter one of the identification information of recipient",
                            "displaySize": 5,
                            "elementName": "idType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Identifier value of the document",
                            "tabOrder": 11,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the identifier value of the recipient document",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO country of issue of the identification document",
                            "tabOrder": 12,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of issue of the recipient identification document",
                            "displaySize": 3,
                            "elementName": "idIssueCountry"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validFromDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validFromDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "value"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validToDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validToDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      },
                      {
                        "groupName": "birthInfo",
                        "mandatory": false,
                        "groupLabel": "birth information of recipient",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 10,
                            "subTitle": "The date of birth of the recipient",
                            "tabOrder": 15,
                            "inputType": "date",
                            "mandatory": true,
                            "description": "Enter the date of birth of the recipient",
                            "displaySize": 10,
                            "elementName": "dateOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The city of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": false,
                            "description": "Enter the city of birth of the recipient",
                            "displaySize": 35,
                            "elementName": "cityOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "The ISO country of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of birth of the recipient",
                            "displaySize": 3,
                            "elementName": "countryOfBirth"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 18,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 19,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      }
                    ]
                  },
                  "transactionDetail": {
                    "purposeOfPayment": {
                      "mandatory": true,
                      "purposeOfPaymentCodes": [
                        {
                          "code": "TAX",
                          "description": "Tax",
                          "senderIndividual": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MOR",
                          "description": "Mortgage",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MIS",
                          "description": "Miscellaneous",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "SAL",
                          "description": "Salary/payroll",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "LOA",
                          "description": "Loan",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "BUS",
                          "description": "Business/commercial payment",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "DEP",
                          "description": "Deposit",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "PEN",
                          "description": "Pension",
                          "recipientCompany": true,
                          "senderIndividual": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "GetMetaDataResponse-5": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.   \n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData-5"
            },
            "examples": {
              "GetMetadaResponse": {
                "value": {
                  "recipientDetail": {
                    "identityGroups": [
                      {
                        "groupName": "name",
                        "mandatory": true,
                        "groupLabel": "Recipient name details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The first name of the recipient",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first name of the recipient",
                            "displaySize": 35,
                            "elementName": "firstName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The last name of the recipient",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the family name of the recipient",
                            "displaySize": 35,
                            "elementName": "lastName",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "legalEntityIdentity",
                        "mandatory": true,
                        "groupLabel": "Legal Entity Identity",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Name of the company",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the name of the recipient company",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Registration number of the company",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the registration number of the recipient company",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Company registration ISO country",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code where recipient company is registered",
                            "displaySize": 2,
                            "elementName": "country"
                          }
                        ]
                      },
                      {
                        "groupName": "bank",
                        "mandatory": true,
                        "groupLabel": "Bank details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Bank Name",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the Bank Name",
                            "displaySize": 30,
                            "elementName": "bankName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Account Holder",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Account Holders Name",
                            "displaySize": 35,
                            "elementName": "accountName"
                          },
                          {
                            "locale": "en",
                            "maxSize": 34,
                            "subTitle": "Account",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Account Number",
                            "displaySize": 8,
                            "elementName": "accountNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Currency Code",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account currency code",
                            "displaySize": 3,
                            "elementName": "currencyCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Branch Code",
                            "tabOrder": 5,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account branch code",
                            "displaySize": 12,
                            "elementName": "branchCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Country Code",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "this element contains ISO3166 country code (Alpha-3)",
                            "displaySize": 3,
                            "elementName": "countryCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Bank Code",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Bank Code",
                            "displaySize": 12,
                            "elementName": "bankCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 8,
                            "subTitle": "Account Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Checking",
                                "value": "1"
                              },
                              {
                                "label": "Savings",
                                "value": "2"
                              },
                              {
                                "label": "Loan",
                                "value": "5"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Select the Account Type",
                            "displaySize": 8,
                            "elementName": "accountType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 7,
                            "subTitle": "Account Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "IBAN",
                                "value": "IBAN"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account number type. Valid values: 'IBAN' and 'DEFAULT'",
                            "displaySize": 7,
                            "elementName": "accountNumberType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 9,
                            "subTitle": "Bank Code Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "ABARouting",
                                "value": "ABA"
                              },
                              {
                                "label": "SORT_CODE",
                                "value": "SORT_CODE"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account - bank code type. Valid values: 'DEFAULT', 'ABA' and 'SORT_CODE'",
                            "displaySize": 9,
                            "elementName": "bankCodeType"
                          }
                        ]
                      },
                      {
                        "groupName": "address",
                        "mandatory": false,
                        "groupLabel": "Address details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "First line of address of recipient",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine1",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Second line of address of recipient",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the second line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine2",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "City of residency of recipient",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the city of residency of recipient",
                            "displaySize": 35,
                            "elementName": "city",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 25,
                            "subTitle": "State of residency of recipient",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the state of residency of recipient",
                            "displaySize": 25,
                            "elementName": "state",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Postal Code of residency of recipient",
                            "tabOrder": 8,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the Postal Code of residency of recipient",
                            "displaySize": 10,
                            "elementName": "postalCode",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO county of residency of recipient",
                            "tabOrder": 9,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the ISO county code of residency of recipient",
                            "displaySize": 3,
                            "elementName": "country",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "contactInfo",
                        "mandatory": true,
                        "groupLabel": "Contact Information",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Contact Number",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number of recipient. Symbol + followed by digits, no other symbols, e.g. something like +447700123456 (note, refer ISO spec E.164)",
                            "displaySize": 16,
                            "elementName": "contactNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 210,
                            "subTitle": "Contact Email",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Contact email of recipient",
                            "displaySize": 50,
                            "elementName": "contactEmail"
                          },
                          {
                            "locale": "en",
                            "maxSize": 6,
                            "subTitle": "Contact Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "MOBILE",
                                "value": "MOBILE"
                              },
                              {
                                "label": "HOME",
                                "value": "HOME"
                              },
                              {
                                "label": "WORK",
                                "value": "WORK"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number Type can be 'MOBILE', 'WORK','HOME' ",
                            "displaySize": 6,
                            "elementName": "contactNumberType"
                          }
                        ]
                      },
                      {
                        "groupName": "identificationList",
                        "mandatory": false,
                        "groupLabel": "Identification details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 1,
                            "subTitle": "Identification information of recipient",
                            "tabOrder": 10,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Passport",
                                "value": "P"
                              },
                              {
                                "label": "National ID Card",
                                "value": "N"
                              },
                              {
                                "label": "Driving License",
                                "value": "D"
                              }
                            ],
                            "mandatory": true,
                            "description": "Enter one of the identification information of recipient",
                            "displaySize": 5,
                            "elementName": "idType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Identifier value of the document",
                            "tabOrder": 11,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the identifier value of the recipient document",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO country of issue of the identification document",
                            "tabOrder": 12,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of issue of the recipient identification document",
                            "displaySize": 3,
                            "elementName": "idIssueCountry"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validFromDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validFromDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "value"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validToDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validToDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      },
                      {
                        "groupName": "birthInfo",
                        "mandatory": false,
                        "groupLabel": "birth information of recipient",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 10,
                            "subTitle": "The date of birth of the recipient",
                            "tabOrder": 15,
                            "inputType": "date",
                            "mandatory": true,
                            "description": "Enter the date of birth of the recipient",
                            "displaySize": 10,
                            "elementName": "dateOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The city of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": false,
                            "description": "Enter the city of birth of the recipient",
                            "displaySize": 35,
                            "elementName": "cityOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "The ISO country of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of birth of the recipient",
                            "displaySize": 3,
                            "elementName": "countryOfBirth"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 18,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 19,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      }
                    ]
                  },
                  "transactionDetail": {
                    "purposeOfPayment": {
                      "mandatory": true,
                      "purposeOfPaymentCodes": [
                        {
                          "code": "TAX",
                          "description": "Tax",
                          "senderIndividual": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MOR",
                          "description": "Mortgage",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MIS",
                          "description": "Miscellaneous",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "SAL",
                          "description": "Salary/payroll",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "LOA",
                          "description": "Loan",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "BUS",
                          "description": "Business/commercial payment",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "DEP",
                          "description": "Deposit",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "PEN",
                          "description": "Pension",
                          "recipientCompany": true,
                          "senderIndividual": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "GetMetaDataResponse-2": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.\n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData-2"
            },
            "examples": {
              "GetMetadaResponse": {
                "value": {
                  "recipientDetail": {
                    "identityGroups": [
                      {
                        "groupName": "name",
                        "mandatory": true,
                        "groupLabel": "Recipient name details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The first name of the recipient",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first name of the recipient",
                            "displaySize": 35,
                            "elementName": "firstName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The last name of the recipient",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the family name of the recipient",
                            "displaySize": 35,
                            "elementName": "lastName",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "legalEntityIdentity",
                        "mandatory": true,
                        "groupLabel": "Legal Entity Identity",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Name of the company",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the name of the recipient company",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Registration number of the company",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the registration number of the recipient company",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Company registration ISO country",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code where recipient company is registered",
                            "displaySize": 2,
                            "elementName": "country"
                          }
                        ]
                      },
                      {
                        "groupName": "bank",
                        "mandatory": true,
                        "groupLabel": "Bank details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Bank Name",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the Bank Name",
                            "displaySize": 30,
                            "elementName": "bankName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Account Holder",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Account Holders Name",
                            "displaySize": 35,
                            "elementName": "accountName"
                          },
                          {
                            "locale": "en",
                            "maxSize": 34,
                            "subTitle": "Account",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Account Number",
                            "displaySize": 8,
                            "elementName": "accountNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Currency Code",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account currency code",
                            "displaySize": 3,
                            "elementName": "currencyCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Branch Code",
                            "tabOrder": 5,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account branch code",
                            "displaySize": 12,
                            "elementName": "branchCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Country Code",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "this element contains ISO3166 country code (Alpha-3)",
                            "displaySize": 3,
                            "elementName": "countryCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Bank Code",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Bank Code",
                            "displaySize": 12,
                            "elementName": "bankCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 8,
                            "subTitle": "Account Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Checking",
                                "value": "1"
                              },
                              {
                                "label": "Savings",
                                "value": "2"
                              },
                              {
                                "label": "Loan",
                                "value": "5"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Select the Account Type",
                            "displaySize": 8,
                            "elementName": "accountType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 7,
                            "subTitle": "Account Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "IBAN",
                                "value": "IBAN"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account number type. Valid values: 'IBAN' and 'DEFAULT'",
                            "displaySize": 7,
                            "elementName": "accountNumberType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 9,
                            "subTitle": "Bank Code Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "ABARouting",
                                "value": "ABA"
                              },
                              {
                                "label": "SORT_CODE",
                                "value": "SORT_CODE"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account - bank code type. Valid values: 'DEFAULT', 'ABA' and 'SORT_CODE'",
                            "displaySize": 9,
                            "elementName": "bankCodeType"
                          }
                        ]
                      },
                      {
                        "groupName": "address",
                        "mandatory": false,
                        "groupLabel": "Address details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "First line of address of recipient",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine1",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Second line of address of recipient",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the second line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine2",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "City of residency of recipient",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the city of residency of recipient",
                            "displaySize": 35,
                            "elementName": "city",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 25,
                            "subTitle": "State of residency of recipient",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the state of residency of recipient",
                            "displaySize": 25,
                            "elementName": "state",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Postal Code of residency of recipient",
                            "tabOrder": 8,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the Postal Code of residency of recipient",
                            "displaySize": 10,
                            "elementName": "postalCode",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO county of residency of recipient",
                            "tabOrder": 9,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the ISO county code of residency of recipient",
                            "displaySize": 3,
                            "elementName": "country",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "contactInfo",
                        "mandatory": true,
                        "groupLabel": "Contact Information",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Contact Number",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number of recipient. Symbol + followed by digits, no other symbols, e.g. something like +447700123456 (note, refer ISO spec E.164)",
                            "displaySize": 16,
                            "elementName": "contactNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 210,
                            "subTitle": "Contact Email",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Contact email of recipient",
                            "displaySize": 50,
                            "elementName": "contactEmail"
                          },
                          {
                            "locale": "en",
                            "maxSize": 6,
                            "subTitle": "Contact Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "MOBILE",
                                "value": "MOBILE"
                              },
                              {
                                "label": "HOME",
                                "value": "HOME"
                              },
                              {
                                "label": "WORK",
                                "value": "WORK"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number Type can be 'MOBILE', 'WORK','HOME' ",
                            "displaySize": 6,
                            "elementName": "contactNumberType"
                          }
                        ]
                      },
                      {
                        "groupName": "identificationList",
                        "mandatory": false,
                        "groupLabel": "Identification details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 1,
                            "subTitle": "Identification information of recipient",
                            "tabOrder": 10,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Passport",
                                "value": "P"
                              },
                              {
                                "label": "National ID Card",
                                "value": "N"
                              },
                              {
                                "label": "Driving License",
                                "value": "D"
                              }
                            ],
                            "mandatory": true,
                            "description": "Enter one of the identification information of recipient",
                            "displaySize": 5,
                            "elementName": "idType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Identifier value of the document",
                            "tabOrder": 11,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the identifier value of the recipient document",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO country of issue of the identification document",
                            "tabOrder": 12,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of issue of the recipient identification document",
                            "displaySize": 3,
                            "elementName": "idIssueCountry"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validFromDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validFromDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "value"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validToDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validToDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      },
                      {
                        "groupName": "birthInfo",
                        "mandatory": false,
                        "groupLabel": "birth information of recipient",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 10,
                            "subTitle": "The date of birth of the recipient",
                            "tabOrder": 15,
                            "inputType": "date",
                            "mandatory": true,
                            "description": "Enter the date of birth of the recipient",
                            "displaySize": 10,
                            "elementName": "dateOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The city of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": false,
                            "description": "Enter the city of birth of the recipient",
                            "displaySize": 35,
                            "elementName": "cityOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "The ISO country of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of birth of the recipient",
                            "displaySize": 3,
                            "elementName": "countryOfBirth"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 18,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 19,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      }
                    ]
                  },
                  "transactionDetail": {
                    "purposeOfPayment": {
                      "mandatory": true,
                      "purposeOfPaymentCodes": [
                        {
                          "code": "TAX",
                          "description": "Tax",
                          "senderIndividual": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MOR",
                          "description": "Mortgage",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MIS",
                          "description": "Miscellaneous",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "SAL",
                          "description": "Salary/payroll",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "LOA",
                          "description": "Loan",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "BUS",
                          "description": "Business/commercial payment",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "DEP",
                          "description": "Deposit",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "PEN",
                          "description": "Pension",
                          "recipientCompany": true,
                          "senderIndividual": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "GetMetaDataResponse-1": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.   \n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData-1"
            }
          }
        }
      },
      "GetMetaDataResponse-7": {
        "description": "Returns the metadata of rules and conditions of the request (e.g. product, corridor).\n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Combined-1"
            }
          }
        }
      },
      "GetMetaDataResponse-9": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.\n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData-7"
            },
            "examples": {
              "GetMetadaResponse": {
                "value": {
                  "recipientDetail": {
                    "identityGroups": [
                      {
                        "groupName": "name",
                        "mandatory": true,
                        "groupLabel": "Recipient name details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The first name of the recipient",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first name of the recipient",
                            "displaySize": 35,
                            "elementName": "firstName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The last name of the recipient",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the family name of the recipient",
                            "displaySize": 35,
                            "elementName": "lastName",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "legalEntityIdentity",
                        "mandatory": true,
                        "groupLabel": "Legal Entity Identity",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Name of the company",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the name of the recipient company",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Registration number of the company",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the registration number of the recipient company",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Company registration ISO country",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code where recipient company is registered",
                            "displaySize": 2,
                            "elementName": "country"
                          }
                        ]
                      },
                      {
                        "groupName": "bank",
                        "mandatory": true,
                        "groupLabel": "Bank details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Bank Name",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the Bank Name",
                            "displaySize": 30,
                            "elementName": "bankName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Account Holder",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Account Holders Name",
                            "displaySize": 35,
                            "elementName": "accountName"
                          },
                          {
                            "locale": "en",
                            "maxSize": 34,
                            "subTitle": "Account",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Account Number",
                            "displaySize": 8,
                            "elementName": "accountNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Currency Code",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account currency code",
                            "displaySize": 3,
                            "elementName": "currencyCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Branch Code",
                            "tabOrder": 5,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account branch code",
                            "displaySize": 12,
                            "elementName": "branchCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Country Code",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "this element contains ISO3166 country code (Alpha-3)",
                            "displaySize": 3,
                            "elementName": "countryCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Bank Code",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Bank Code",
                            "displaySize": 12,
                            "elementName": "bankCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 8,
                            "subTitle": "Account Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Checking",
                                "value": "1"
                              },
                              {
                                "label": "Savings",
                                "value": "2"
                              },
                              {
                                "label": "Loan",
                                "value": "5"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Select the Account Type",
                            "displaySize": 8,
                            "elementName": "accountType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 7,
                            "subTitle": "Account Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "IBAN",
                                "value": "IBAN"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account number type. Valid values: 'IBAN' and 'DEFAULT'",
                            "displaySize": 7,
                            "elementName": "accountNumberType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 9,
                            "subTitle": "Bank Code Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "ABARouting",
                                "value": "ABA"
                              },
                              {
                                "label": "SORT_CODE",
                                "value": "SORT_CODE"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account - bank code type. Valid values: 'DEFAULT', 'ABA' and 'SORT_CODE'",
                            "displaySize": 9,
                            "elementName": "bankCodeType"
                          }
                        ]
                      },
                      {
                        "groupName": "address",
                        "mandatory": false,
                        "groupLabel": "Address details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "First line of address of recipient",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine1",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Second line of address of recipient",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the second line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine2",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "City of residency of recipient",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the city of residency of recipient",
                            "displaySize": 35,
                            "elementName": "city",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 25,
                            "subTitle": "State of residency of recipient",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the state of residency of recipient",
                            "displaySize": 25,
                            "elementName": "state",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Postal Code of residency of recipient",
                            "tabOrder": 8,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the Postal Code of residency of recipient",
                            "displaySize": 10,
                            "elementName": "postalCode",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO county of residency of recipient",
                            "tabOrder": 9,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the ISO county code of residency of recipient",
                            "displaySize": 3,
                            "elementName": "country",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "contactInfo",
                        "mandatory": true,
                        "groupLabel": "Contact Information",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Contact Number",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number of recipient. Symbol + followed by digits, no other symbols, e.g. something like +447700123456 (note, refer ISO spec E.164)",
                            "displaySize": 16,
                            "elementName": "contactNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 210,
                            "subTitle": "Contact Email",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Contact email of recipient",
                            "displaySize": 50,
                            "elementName": "contactEmail"
                          },
                          {
                            "locale": "en",
                            "maxSize": 6,
                            "subTitle": "Contact Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "MOBILE",
                                "value": "MOBILE"
                              },
                              {
                                "label": "HOME",
                                "value": "HOME"
                              },
                              {
                                "label": "WORK",
                                "value": "WORK"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number Type can be 'MOBILE', 'WORK','HOME' ",
                            "displaySize": 6,
                            "elementName": "contactNumberType"
                          }
                        ]
                      },
                      {
                        "groupName": "identificationList",
                        "mandatory": false,
                        "groupLabel": "Identification details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 1,
                            "subTitle": "Identification information of recipient",
                            "tabOrder": 10,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Passport",
                                "value": "P"
                              },
                              {
                                "label": "National ID Card",
                                "value": "N"
                              },
                              {
                                "label": "Driving License",
                                "value": "D"
                              }
                            ],
                            "mandatory": true,
                            "description": "Enter one of the identification information of recipient",
                            "displaySize": 5,
                            "elementName": "idType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Identifier value of the document",
                            "tabOrder": 11,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the identifier value of the recipient document",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO country of issue of the identification document",
                            "tabOrder": 12,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of issue of the recipient identification document",
                            "displaySize": 3,
                            "elementName": "idIssueCountry"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validFromDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validFromDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "value"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validToDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validToDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      },
                      {
                        "groupName": "birthInfo",
                        "mandatory": false,
                        "groupLabel": "birth information of recipient",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 10,
                            "subTitle": "The date of birth of the recipient",
                            "tabOrder": 15,
                            "inputType": "date",
                            "mandatory": true,
                            "description": "Enter the date of birth of the recipient",
                            "displaySize": 10,
                            "elementName": "dateOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The city of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": false,
                            "description": "Enter the city of birth of the recipient",
                            "displaySize": 35,
                            "elementName": "cityOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "The ISO country of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of birth of the recipient",
                            "displaySize": 3,
                            "elementName": "countryOfBirth"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 18,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 19,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      }
                    ]
                  },
                  "transactionDetail": {
                    "purposeOfPayment": {
                      "mandatory": true,
                      "purposeOfPaymentCodes": [
                        {
                          "code": "TAX",
                          "description": "Tax",
                          "senderIndividual": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MOR",
                          "description": "Mortgage",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MIS",
                          "description": "Miscellaneous",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "SAL",
                          "description": "Salary/payroll",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "LOA",
                          "description": "Loan",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "BUS",
                          "description": "Business/commercial payment",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "DEP",
                          "description": "Deposit",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "PEN",
                          "description": "Pension",
                          "recipientCompany": true,
                          "senderIndividual": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse-1": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "403ErrorResponse": {
        "description": "Request is forbidden",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "errorResponse": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ErrorResponse"
                    }
                  ]
                }
              }
            }
          }
        }
      },
      "GetPostingCalendarResponse": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.\n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate"
                  }
                }
              }
            }
          }
        }
      },
      "QueryResponseDigitalAsset-2": {
        "description": "Transaction details response for digital asset",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/DigitalAssetQueryResponse-2"
                }
              ]
            }
          }
        }
      },
      "QueryResponseDigitalAsset-3": {
        "description": "Transaction details response for digital asset",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/DigitalAssetQueryResponse-3"
                }
              ]
            }
          }
        }
      },
      "QueryResponseDigitalAsset-1": {
        "description": "Transaction details response for digital asset",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/DigitalAssetQueryResponse-1"
                }
              ]
            }
          }
        }
      },
      "QueryResponseDigitalAsset-11": {
        "description": "Transaction details response for digital asset",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/DigitalAssetQueryResponse-11"
            }
          }
        }
      },
      "QueryResponseDigitalAsset-12": {
        "description": "Transaction details response for digital asset",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/DigitalAssetQueryResponse-12"
                }
              ],
              "exampleSetFlag": false
            }
          }
        }
      },
      "GetPostingCalendarResponse-1": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.\n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate-1"
                  }
                }
              }
            }
          }
        }
      },
      "QueryResponseDigitalAsset-13": {
        "description": "Transaction details response for digital asset",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/DigitalAssetQueryResponse-13"
            }
          }
        }
      },
      "QueryResponseDigitalAsset-10": {
        "description": "Transaction details response for digital asset",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/DigitalAssetQueryResponse-10"
                }
              ]
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse-9": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "GetPostingCalendarResponse-7": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.   \n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate"
                  }
                }
              }
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse-8": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "GetPostingCalendarResponse-6": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.   \n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate-3"
                  }
                }
              }
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse-7": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "GetPostingCalendarResponse-9": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.\n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate-7"
                  }
                }
              }
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse-6": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "GetPostingCalendarResponse-8": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.\n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "properties": {
                "postingCalendar": {
                  "items": {
                    "$ref": "#/components/schemas/PostingDate-6"
                  },
                  "exampleSetFlag": false,
                  "types": [
                    "array"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            }
          }
        }
      },
      "GetPostingCalendarResponse-3": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.   \n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate-2"
                  }
                }
              }
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse-5": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse-4": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "GetPostingCalendarResponse-2": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.   \n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate-2"
                  }
                }
              }
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse-3": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "GetPostingCalendarResponse-5": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.\n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "properties": {
                "postingCalendar": {
                  "items": {
                    "$ref": "#/components/schemas/PostingDate-5"
                  },
                  "exampleSetFlag": false,
                  "types": [
                    "array"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse-2": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "GetPostingCalendarResponse-4": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.   \n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate-4"
                  }
                }
              }
            }
          }
        }
      },
      "QueryResponse-14": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-14"
                }
              ]
            }
          }
        }
      },
      "QueryResponse-13": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-13"
                }
              ]
            }
          }
        }
      },
      "QueryResponse-12": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-12"
                }
              ]
            }
          }
        }
      },
      "QueryResponse-11": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-11"
                }
              ]
            }
          }
        }
      },
      "QueryResponse-10": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-10"
                }
              ]
            }
          }
        }
      },
      "AFTRResponse-5": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-5"
            }
          }
        }
      },
      "AFTRResponse-6": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-6"
            }
          }
        }
      },
      "QueryResponse-1": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-1"
                }
              ]
            }
          }
        }
      },
      "QueryResponse-2": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-2"
                }
              ]
            }
          }
        }
      },
      "AFTRResponse-7": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-7"
            }
          }
        }
      },
      "GetAccountBalanceResponse-7": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a list of balances for all the currencies the merchant may have or has transacted with.\n",
        "content": {
          "application/json": {
            "schema": {
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-5"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-2"
                      }
                    },
                    "exampleSetFlag": false,
                    "types": [
                      "object"
                    ]
                  }
                ],
                "exampleSetFlag": false
              },
              "exampleSetFlag": false,
              "types": [
                "array"
              ]
            }
          }
        }
      },
      "QueryResponse-3": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-3"
                }
              ]
            }
          }
        }
      },
      "GetAccountBalanceResponse-8": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a list of balances for all the currencies the merchant may have or has transacted with.\n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-6"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "AFTRResponse-1": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-1"
            }
          }
        }
      },
      "AFTRResponse-2": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-2"
            }
          }
        }
      },
      "AFTRResponse-3": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-3"
            }
          }
        }
      },
      "QueryResponse-16": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-16"
                }
              ]
            }
          }
        }
      },
      "429ErrorResponse-1": {
        "description": "Too Many Requests",
        "content": {
          "application/problem+json": {}
        }
      },
      "AFTRResponse-4": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-4"
            }
          }
        }
      },
      "QueryResponse-15": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-15"
                }
              ]
            }
          }
        }
      },
      "GetAccountBalanceResponse-1": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a list of balances for all the currencies the merchant may have or has transacted with.\n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-1"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "OCTResponse": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData"
            }
          }
        }
      },
      "QueryResponse-8": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-8"
                }
              ]
            }
          }
        }
      },
      "QueryResponse-9": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-9"
                }
              ]
            }
          }
        }
      },
      "GetAccountBalanceResponse-2": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "QueryResponse-4": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-4"
                }
              ]
            }
          }
        }
      },
      "AFTRResponse-9": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-9"
            }
          }
        }
      },
      "QueryResponse-5": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-5"
                }
              ]
            }
          }
        }
      },
      "QueryResponse-6": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-6"
                }
              ]
            }
          }
        }
      },
      "GetAccountBalanceResponse-3": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-3"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "QueryResponse-7": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse-7"
                }
              ]
            }
          }
        }
      },
      "GetAccountBalanceResponse-4": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a list of balances for all the currencies the merchant may have or has transacted with.\n",
        "content": {
          "application/json": {
            "schema": {
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-4"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-2"
                      }
                    },
                    "exampleSetFlag": false,
                    "types": [
                      "object"
                    ]
                  }
                ],
                "exampleSetFlag": false
              },
              "exampleSetFlag": false,
              "types": [
                "array"
              ]
            }
          }
        }
      },
      "OCTResponse-8": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-9"
            }
          }
        }
      },
      "OCTResponse-9": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-10"
            }
          }
        }
      },
      "OCTResponse-4": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-4"
            }
          }
        }
      },
      "OCTResponse-5": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-5"
            }
          }
        }
      },
      "OCTResponse-6": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-6"
            }
          }
        }
      },
      "OCTResponse-7": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-7"
            }
          }
        }
      },
      "OCTResponse-1": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-1"
            }
          }
        }
      },
      "OCTResponse-2": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-2"
            }
          }
        }
      },
      "400ErrorResponses": {
        "description": "Comprehensive array of errors",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ErrorResponse"
              }
            }
          }
        }
      },
      "QueryAccountResponse": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryOnlyResponse"
                }
              ]
            }
          }
        }
      },
      "OCTResponse-3": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-3"
            }
          }
        }
      },
      "CancelPayoutResponse": {
        "description": "cancel payout response",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "transactionDetail"
              ],
              "type": "object",
              "properties": {
                "transactionDetail": {
                  "required": [
                    "clientReferenceId",
                    "initiatingPartyId",
                    "status"
                  ],
                  "type": "object",
                  "properties": {
                    "status": {
                      "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n- PENDING_CANCELLATION: Cancel payout request is pending before cancellation\n- CANCELLED: A transaction has been successfully cancelled\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutCancelStatus"
                        }
                      ]
                    },
                    "payoutId": {
                      "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout and Reversals, Chargeback, Response, Advice for to Card.\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutId"
                        }
                      ]
                    },
                    "clientReferenceId": {
                      "$ref": "#/components/schemas/ClientReferenceId"
                    },
                    "initiatingPartyId": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/InitiatingPartyId"
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "400ErrorResponse-1": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey"
            }
          }
        }
      },
      "400ErrorResponse-2": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-2"
            }
          }
        }
      },
      "400ErrorResponse-3": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-3"
            }
          }
        }
      },
      "400ErrorResponse-4": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-4"
            }
          }
        }
      },
      "400ErrorResponse-5": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-1"
            }
          }
        }
      },
      "AFTRResponse": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData"
            }
          }
        }
      },
      "AFTRResponse-11": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-11"
            }
          }
        }
      },
      "AFTRResponse-16": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-16"
            }
          }
        }
      },
      "QueryResponseAccount": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse"
                }
              ]
            }
          }
        }
      },
      "GetMetaDataResponse-12": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.   \n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData-1"
            },
            "examples": {
              "GetMetadaResponse": {
                "value": {
                  "recipientDetail": {
                    "identityGroups": [
                      {
                        "groupName": "name",
                        "mandatory": true,
                        "groupLabel": "Recipient name details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The first name of the recipient",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first name of the recipient",
                            "displaySize": 35,
                            "elementName": "firstName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The last name of the recipient",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the family name of the recipient",
                            "displaySize": 35,
                            "elementName": "lastName",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "legalEntityIdentity",
                        "mandatory": true,
                        "groupLabel": "Legal Entity Identity",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Name of the company",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the name of the recipient company",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Registration number of the company",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the registration number of the recipient company",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Company registration ISO country",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code where recipient company is registered",
                            "displaySize": 2,
                            "elementName": "country"
                          }
                        ]
                      },
                      {
                        "groupName": "bank",
                        "mandatory": true,
                        "groupLabel": "Bank details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Bank Name",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the Bank Name",
                            "displaySize": 30,
                            "elementName": "bankName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Account Holder",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Account Holders Name",
                            "displaySize": 35,
                            "elementName": "accountName"
                          },
                          {
                            "locale": "en",
                            "maxSize": 34,
                            "subTitle": "Account",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Account Number",
                            "displaySize": 8,
                            "elementName": "accountNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Currency Code",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account currency code",
                            "displaySize": 3,
                            "elementName": "currencyCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Branch Code",
                            "tabOrder": 5,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account branch code",
                            "displaySize": 12,
                            "elementName": "branchCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Country Code",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "this element contains ISO3166 country code (Alpha-3)",
                            "displaySize": 3,
                            "elementName": "countryCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Bank Code",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Bank Code",
                            "displaySize": 12,
                            "elementName": "bankCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 8,
                            "subTitle": "Account Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Checking",
                                "value": "1"
                              },
                              {
                                "label": "Savings",
                                "value": "2"
                              },
                              {
                                "label": "Loan",
                                "value": "5"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Select the Account Type",
                            "displaySize": 8,
                            "elementName": "accountType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 7,
                            "subTitle": "Account Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "IBAN",
                                "value": "IBAN"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account number type. Valid values: 'IBAN' and 'DEFAULT'",
                            "displaySize": 7,
                            "elementName": "accountNumberType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 9,
                            "subTitle": "Bank Code Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "ABARouting",
                                "value": "ABA"
                              },
                              {
                                "label": "SORT_CODE",
                                "value": "SORT_CODE"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account - bank code type. Valid values: 'DEFAULT', 'ABA' and 'SORT_CODE'",
                            "displaySize": 9,
                            "elementName": "bankCodeType"
                          }
                        ]
                      },
                      {
                        "groupName": "address",
                        "mandatory": false,
                        "groupLabel": "Address details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "First line of address of recipient",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine1",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Second line of address of recipient",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the second line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine2",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "City of residency of recipient",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the city of residency of recipient",
                            "displaySize": 35,
                            "elementName": "city",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 25,
                            "subTitle": "State of residency of recipient",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the state of residency of recipient",
                            "displaySize": 25,
                            "elementName": "state",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Postal Code of residency of recipient",
                            "tabOrder": 8,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the Postal Code of residency of recipient",
                            "displaySize": 10,
                            "elementName": "postalCode",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO county of residency of recipient",
                            "tabOrder": 9,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the ISO county code of residency of recipient",
                            "displaySize": 3,
                            "elementName": "country",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "contactInfo",
                        "mandatory": true,
                        "groupLabel": "Contact Information",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Contact Number",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number of recipient. Symbol + followed by digits, no other symbols, e.g. something like +447700123456 (note, refer ISO spec E.164)",
                            "displaySize": 16,
                            "elementName": "contactNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 210,
                            "subTitle": "Contact Email",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Contact email of recipient",
                            "displaySize": 50,
                            "elementName": "contactEmail"
                          },
                          {
                            "locale": "en",
                            "maxSize": 6,
                            "subTitle": "Contact Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "MOBILE",
                                "value": "MOBILE"
                              },
                              {
                                "label": "HOME",
                                "value": "HOME"
                              },
                              {
                                "label": "WORK",
                                "value": "WORK"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number Type can be 'MOBILE', 'WORK','HOME' ",
                            "displaySize": 6,
                            "elementName": "contactNumberType"
                          }
                        ]
                      },
                      {
                        "groupName": "identificationList",
                        "mandatory": false,
                        "groupLabel": "Identification details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 1,
                            "subTitle": "Identification information of recipient",
                            "tabOrder": 10,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Passport",
                                "value": "P"
                              },
                              {
                                "label": "National ID Card",
                                "value": "N"
                              },
                              {
                                "label": "Driving License",
                                "value": "D"
                              }
                            ],
                            "mandatory": true,
                            "description": "Enter one of the identification information of recipient",
                            "displaySize": 5,
                            "elementName": "idType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Identifier value of the document",
                            "tabOrder": 11,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the identifier value of the recipient document",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO country of issue of the identification document",
                            "tabOrder": 12,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of issue of the recipient identification document",
                            "displaySize": 3,
                            "elementName": "idIssueCountry"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validFromDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validFromDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "value"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validToDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validToDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      },
                      {
                        "groupName": "birthInfo",
                        "mandatory": false,
                        "groupLabel": "birth information of recipient",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 10,
                            "subTitle": "The date of birth of the recipient",
                            "tabOrder": 15,
                            "inputType": "date",
                            "mandatory": true,
                            "description": "Enter the date of birth of the recipient",
                            "displaySize": 10,
                            "elementName": "dateOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The city of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": false,
                            "description": "Enter the city of birth of the recipient",
                            "displaySize": 35,
                            "elementName": "cityOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "The ISO country of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of birth of the recipient",
                            "displaySize": 3,
                            "elementName": "countryOfBirth"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 18,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 19,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      }
                    ]
                  },
                  "transactionDetail": {
                    "purposeOfPayment": {
                      "mandatory": true,
                      "purposeOfPaymentCodes": [
                        {
                          "code": "TAX",
                          "description": "Tax",
                          "senderIndividual": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MOR",
                          "description": "Mortgage",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MIS",
                          "description": "Miscellaneous",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "SAL",
                          "description": "Salary/payroll",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "LOA",
                          "description": "Loan",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "BUS",
                          "description": "Business/commercial payment",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "DEP",
                          "description": "Deposit",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "PEN",
                          "description": "Pension",
                          "recipientCompany": true,
                          "senderIndividual": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "GetMetaDataResponse-14": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.   \n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData-14"
            },
            "examples": {
              "GetMetadaResponse": {
                "value": {
                  "recipientDetail": {
                    "identityGroups": [
                      {
                        "groupName": "name",
                        "mandatory": true,
                        "groupLabel": "Recipient name details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The first name of the recipient",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first name of the recipient",
                            "displaySize": 35,
                            "elementName": "firstName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The last name of the recipient",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the family name of the recipient",
                            "displaySize": 35,
                            "elementName": "lastName",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "legalEntityIdentity",
                        "mandatory": true,
                        "groupLabel": "Legal Entity Identity",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Name of the company",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the name of the recipient company",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Registration number of the company",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the registration number of the recipient company",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Company registration ISO country",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code where recipient company is registered",
                            "displaySize": 2,
                            "elementName": "country"
                          }
                        ]
                      },
                      {
                        "groupName": "bank",
                        "mandatory": true,
                        "groupLabel": "Bank details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Bank Name",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the Bank Name",
                            "displaySize": 30,
                            "elementName": "bankName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Account Holder",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Account Holders Name",
                            "displaySize": 35,
                            "elementName": "accountName"
                          },
                          {
                            "locale": "en",
                            "maxSize": 34,
                            "subTitle": "Account",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Account Number",
                            "displaySize": 8,
                            "elementName": "accountNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Currency Code",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account currency code",
                            "displaySize": 3,
                            "elementName": "currencyCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Branch Code",
                            "tabOrder": 5,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account branch code",
                            "displaySize": 12,
                            "elementName": "branchCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Country Code",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "this element contains ISO3166 country code (Alpha-3)",
                            "displaySize": 3,
                            "elementName": "countryCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Bank Code",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Bank Code",
                            "displaySize": 12,
                            "elementName": "bankCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 8,
                            "subTitle": "Account Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Checking",
                                "value": "1"
                              },
                              {
                                "label": "Savings",
                                "value": "2"
                              },
                              {
                                "label": "Loan",
                                "value": "5"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Select the Account Type",
                            "displaySize": 8,
                            "elementName": "accountType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 7,
                            "subTitle": "Account Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "IBAN",
                                "value": "IBAN"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account number type. Valid values: 'IBAN' and 'DEFAULT'",
                            "displaySize": 7,
                            "elementName": "accountNumberType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 9,
                            "subTitle": "Bank Code Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "ABARouting",
                                "value": "ABA"
                              },
                              {
                                "label": "SORT_CODE",
                                "value": "SORT_CODE"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account - bank code type. Valid values: 'DEFAULT', 'ABA' and 'SORT_CODE'",
                            "displaySize": 9,
                            "elementName": "bankCodeType"
                          }
                        ]
                      },
                      {
                        "groupName": "address",
                        "mandatory": false,
                        "groupLabel": "Address details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "First line of address of recipient",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine1",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Second line of address of recipient",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the second line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine2",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "City of residency of recipient",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the city of residency of recipient",
                            "displaySize": 35,
                            "elementName": "city",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 25,
                            "subTitle": "State of residency of recipient",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the state of residency of recipient",
                            "displaySize": 25,
                            "elementName": "state",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Postal Code of residency of recipient",
                            "tabOrder": 8,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the Postal Code of residency of recipient",
                            "displaySize": 10,
                            "elementName": "postalCode",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO county of residency of recipient",
                            "tabOrder": 9,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the ISO county code of residency of recipient",
                            "displaySize": 3,
                            "elementName": "country",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "contactInfo",
                        "mandatory": true,
                        "groupLabel": "Contact Information",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Contact Number",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number of recipient. Symbol + followed by digits, no other symbols, e.g. something like +447700123456 (note, refer ISO spec E.164)",
                            "displaySize": 16,
                            "elementName": "contactNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 210,
                            "subTitle": "Contact Email",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Contact email of recipient",
                            "displaySize": 50,
                            "elementName": "contactEmail"
                          },
                          {
                            "locale": "en",
                            "maxSize": 6,
                            "subTitle": "Contact Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "MOBILE",
                                "value": "MOBILE"
                              },
                              {
                                "label": "HOME",
                                "value": "HOME"
                              },
                              {
                                "label": "WORK",
                                "value": "WORK"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number Type can be 'MOBILE', 'WORK','HOME' ",
                            "displaySize": 6,
                            "elementName": "contactNumberType"
                          }
                        ]
                      },
                      {
                        "groupName": "identificationList",
                        "mandatory": false,
                        "groupLabel": "Identification details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 1,
                            "subTitle": "Identification information of recipient",
                            "tabOrder": 10,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Passport",
                                "value": "P"
                              },
                              {
                                "label": "National ID Card",
                                "value": "N"
                              },
                              {
                                "label": "Driving License",
                                "value": "D"
                              }
                            ],
                            "mandatory": true,
                            "description": "Enter one of the identification information of recipient",
                            "displaySize": 5,
                            "elementName": "idType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Identifier value of the document",
                            "tabOrder": 11,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the identifier value of the recipient document",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO country of issue of the identification document",
                            "tabOrder": 12,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of issue of the recipient identification document",
                            "displaySize": 3,
                            "elementName": "idIssueCountry"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validFromDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validFromDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "value"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validToDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validToDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      },
                      {
                        "groupName": "birthInfo",
                        "mandatory": false,
                        "groupLabel": "birth information of recipient",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 10,
                            "subTitle": "The date of birth of the recipient",
                            "tabOrder": 15,
                            "inputType": "date",
                            "mandatory": true,
                            "description": "Enter the date of birth of the recipient",
                            "displaySize": 10,
                            "elementName": "dateOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The city of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": false,
                            "description": "Enter the city of birth of the recipient",
                            "displaySize": 35,
                            "elementName": "cityOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "The ISO country of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of birth of the recipient",
                            "displaySize": 3,
                            "elementName": "countryOfBirth"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 18,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 19,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      }
                    ]
                  },
                  "transactionDetail": {
                    "purposeOfPayment": {
                      "mandatory": true,
                      "purposeOfPaymentCodes": [
                        {
                          "code": "TAX",
                          "description": "Tax",
                          "senderIndividual": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MOR",
                          "description": "Mortgage",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MIS",
                          "description": "Miscellaneous",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "SAL",
                          "description": "Salary/payroll",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "LOA",
                          "description": "Loan",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "BUS",
                          "description": "Business/commercial payment",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "DEP",
                          "description": "Deposit",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "PEN",
                          "description": "Pension",
                          "recipientCompany": true,
                          "senderIndividual": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "GetMetaDataResponse-15": {
        "description": "Returns the metadata of rules and conditions of the request (e.g. product, corridor).\n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Combined-1"
            }
          }
        }
      },
      "400ErrorResponse": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "errorResponse": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ErrorResponse"
                    }
                  ]
                }
              }
            }
          }
        }
      },
      "400ErrorResponses-18": {
        "description": "Comprehensive array of errors",
        "content": {
          "application/problem+json": {
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ErrorResponse"
              }
            }
          }
        }
      },
      "AFTRResponse-18": {
        "description": "Successful AFT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRResponseData-18"
            }
          }
        }
      },
      "GetPostingCalendarResponse-14": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.   \n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate"
                  }
                }
              }
            }
          }
        }
      },
      "GetPostingCalendarResponse-12": {
        "description": "An array of PostingDate objects. \n\nEach PostingDate represents the expected posting date along with that date's cut-off time.   \n",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "postingCalendar"
              ],
              "type": "object",
              "properties": {
                "postingCalendar": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PostingDate-3"
                  }
                }
              }
            }
          }
        }
      },
      "401ErrorResponseNoBody": {
        "description": "Request is unauthorized",
        "content": {
          "application/problem+json": {}
        }
      },
      "QueryResponseDigitalAsset": {
        "description": "Transaction details response for digital asset",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/DigitalAssetQueryResponse"
                }
              ]
            }
          }
        }
      },
      "401ErrorResponse-3": {
        "description": "Request is unauthorized",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-2"
            }
          }
        }
      },
      "401ErrorResponse-4": {
        "description": "Request is unauthorized",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/401ErrorResponseWithKey"
            }
          }
        }
      },
      "401ErrorResponse-1": {
        "description": "Request is unauthorized",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey"
            }
          }
        }
      },
      "401ErrorResponse-2": {
        "description": "Request is unauthorized",
        "content": {
          "application/problem+json": {
            "schema": {
              "type": "object",
              "properties": {
                "errorResponse": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ErrorResponse-1"
                    }
                  ]
                }
              }
            }
          }
        }
      },
      "401ErrorResponse-7": {
        "description": "Request is unauthorized",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-4"
            }
          }
        }
      },
      "401ErrorResponse-8": {
        "description": "Request is unauthorized",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/401ErrorResponseWithKey-1"
            }
          }
        }
      },
      "401ErrorResponse-5": {
        "description": "Request is unauthorized",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-1"
            }
          }
        }
      },
      "401ErrorResponse-6": {
        "description": "Request is unauthorized",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/401ErrorResponseWithKey-1"
            }
          }
        }
      },
      "QueryResponseAccount-9": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-9"
                }
              ]
            }
          }
        }
      },
      "QueryResponseAccount-3": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-3"
                }
              ]
            }
          }
        }
      },
      "400ErrorResponse-15": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey"
            }
          }
        }
      },
      "QueryResponseAccount-4": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-4"
                }
              ]
            }
          }
        }
      },
      "QueryResponseAccount-1": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-1"
                }
              ]
            }
          }
        }
      },
      "QueryResponseAccount-2": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-2"
                }
              ]
            }
          }
        }
      },
      "403ErrorResponse-15": {
        "description": "Request is forbidden",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/403ErrorResponseWithKey-1"
            }
          }
        }
      },
      "QueryResponseAccount-7": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-7"
                }
              ]
            }
          }
        }
      },
      "400ErrorResponse-12": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey"
            }
          }
        }
      },
      "QueryResponseAccount-8": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-8"
                }
              ]
            }
          }
        }
      },
      "400ErrorResponse-11": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-10"
            }
          }
        }
      },
      "403ErrorResponse-13": {
        "description": "Request is forbidden",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/403ErrorResponseWithKey-2"
            }
          }
        }
      },
      "QueryResponseAccount-5": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-5"
                }
              ]
            }
          }
        }
      },
      "400ErrorResponse-14": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-12"
            }
          }
        }
      },
      "QueryResponseAccount-6": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-6"
                }
              ]
            }
          }
        }
      },
      "400ErrorResponse-13": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-11"
            }
          }
        }
      },
      "409ErrorResponse": {
        "description": "Conflict",
        "content": {
          "application/json": {}
        }
      },
      "QueryWalletResponse": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/WalletQueryOnlyResponse"
                }
              ]
            }
          }
        }
      },
      "QueryWalletResponse-9": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/WalletQueryOnlyResponse-9"
                }
              ]
            }
          }
        }
      },
      "QueryWalletResponse-6": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/WalletQueryOnlyResponse-6"
                }
              ]
            }
          }
        }
      },
      "QueryWalletResponse-5": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/WalletQueryOnlyResponse-5"
                }
              ]
            }
          }
        }
      },
      "QueryWalletResponse-4": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/WalletQueryOnlyResponse-4"
                }
              ]
            }
          }
        }
      },
      "500ErrorResponse": {
        "description": "Internal Server Error",
        "content": {
          "application/json": {}
        }
      },
      "QueryWalletResponse-3": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/WalletQueryOnlyResponse-3"
                }
              ]
            }
          }
        }
      },
      "QueryWalletResponse-2": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/WalletQueryOnlyResponse-2"
                }
              ]
            }
          }
        }
      },
      "QueryWalletResponse-1": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/WalletQueryOnlyResponse-1"
                }
              ]
            }
          }
        }
      },
      "Query400ErrorResponse": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/QueryErrorResponseWithKey"
            }
          }
        }
      },
      "401ErrorResponse": {
        "description": "Request is unauthorized",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "errorResponse": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ErrorResponse"
                    }
                  ]
                }
              }
            }
          }
        }
      },
      "403ErrorResponse-22": {
        "description": "Request is forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-11"
            }
          }
        }
      },
      "403ErrorResponse-21": {
        "description": "Request is forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-10"
            }
          }
        }
      },
      "CancelPayoutResponse-4": {
        "description": "cancel payout response",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "transactionDetail"
              ],
              "type": "object",
              "properties": {
                "transactionDetail": {
                  "required": [
                    "clientReferenceId",
                    "initiatingPartyId",
                    "status"
                  ],
                  "type": "object",
                  "properties": {
                    "status": {
                      "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n- PENDING_CANCELLATION: Cancel payout request is pending before cancellation\n- CANCELLED: A transaction has been successfully cancelled\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutCancelStatus"
                        }
                      ]
                    },
                    "payoutId": {
                      "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout and Reversals, Chargeback, Response, Advice for to Card. \n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutId"
                        }
                      ]
                    },
                    "clientReferenceId": {
                      "$ref": "#/components/schemas/ClientReferenceId"
                    },
                    "initiatingPartyId": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/InitiatingPartyId"
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "403ErrorResponse-25": {
        "description": "Request is forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-12"
            }
          }
        }
      },
      "CancelPayoutResponse-7": {
        "description": "cancel payout response",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "transactionDetail"
              ],
              "type": "object",
              "properties": {
                "transactionDetail": {
                  "required": [
                    "clientReferenceId",
                    "initiatingPartyId",
                    "status"
                  ],
                  "type": "object",
                  "properties": {
                    "status": {
                      "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n- PENDING_CANCELLATION: Cancel payout request is pending before cancellation\n- CANCELLED: A transaction has been successfully cancelled\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutCancelStatus"
                        }
                      ]
                    },
                    "payoutId": {
                      "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout and Reversals, Chargeback, Response, Advice for to Card.\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutId"
                        }
                      ]
                    },
                    "clientReferenceId": {
                      "$ref": "#/components/schemas/ClientReferenceId"
                    },
                    "initiatingPartyId": {
                      "$ref": "#/components/schemas/InitiatingPartyId"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "QueryResponse": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/QueryResponse"
                }
              ]
            }
          }
        }
      },
      "CancelPayoutResponse-6": {
        "description": "cancel payout response",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "transactionDetail"
              ],
              "properties": {
                "transactionDetail": {
                  "required": [
                    "clientReferenceId",
                    "initiatingPartyId",
                    "status"
                  ],
                  "properties": {
                    "status": {
                      "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n- PENDING_CANCELLATION: Cancel payout request is pending before cancellation\n- CANCELLED: A transaction has been successfully cancelled\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutCancelStatus-1"
                        }
                      ],
                      "exampleSetFlag": false
                    },
                    "payoutId": {
                      "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout and Reversals, Chargeback, Response, Advice for to Card.\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutId-2"
                        }
                      ],
                      "exampleSetFlag": false
                    },
                    "clientReferenceId": {
                      "$ref": "#/components/schemas/ClientReferenceId-4"
                    },
                    "initiatingPartyId": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/InitiatingPartyId-3"
                        }
                      ],
                      "exampleSetFlag": false
                    }
                  },
                  "exampleSetFlag": false,
                  "types": [
                    "object"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            }
          }
        }
      },
      "CancelPayoutResponse-1": {
        "description": "cancel payout response",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "transactionDetail"
              ],
              "type": "object",
              "properties": {
                "transactionDetail": {
                  "required": [
                    "clientReferenceId",
                    "initiatingPartyId",
                    "status"
                  ],
                  "type": "object",
                  "properties": {
                    "status": {
                      "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n- PENDING_CANCELLATION: Cancel payout request is pending before cancellation\n- CANCELLED: A transaction has been successfully cancelled in PAYMENT_RECEIVED or PENDING status\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutCancelStatus"
                        }
                      ]
                    },
                    "payoutId": {
                      "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout and Reversals, Chargeback, Response, Advice for to Card. \n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutId"
                        }
                      ]
                    },
                    "clientReferenceId": {
                      "$ref": "#/components/schemas/ClientReferenceId-2"
                    },
                    "initiatingPartyId": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/InitiatingPartyId-2"
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "CancelPayoutResponse-3": {
        "description": "cancel payout response",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "transactionDetail"
              ],
              "properties": {
                "transactionDetail": {
                  "required": [
                    "clientReferenceId",
                    "initiatingPartyId",
                    "status"
                  ],
                  "properties": {
                    "status": {
                      "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n- PENDING_CANCELLATION: Cancel payout request is pending before cancellation\n- CANCELLED: A transaction has been successfully cancelled\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutCancelStatus-1"
                        }
                      ],
                      "exampleSetFlag": false
                    },
                    "payoutId": {
                      "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout and Reversals, Chargeback, Response, Advice for to Card.\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutId-2"
                        }
                      ],
                      "exampleSetFlag": false
                    },
                    "clientReferenceId": {
                      "$ref": "#/components/schemas/ClientReferenceId-4"
                    },
                    "initiatingPartyId": {
                      "$ref": "#/components/schemas/InitiatingPartyId-3"
                    }
                  },
                  "exampleSetFlag": false,
                  "types": [
                    "object"
                  ]
                }
              },
              "exampleSetFlag": false,
              "types": [
                "object"
              ]
            }
          }
        }
      },
      "CancelPayoutResponse-2": {
        "description": "cancel payout response",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "transactionDetail"
              ],
              "type": "object",
              "properties": {
                "transactionDetail": {
                  "required": [
                    "clientReferenceId",
                    "initiatingPartyId",
                    "payoutId",
                    "status"
                  ],
                  "type": "object",
                  "properties": {
                    "status": {
                      "description": "Status of the cancel request\n\nValid Value are: PENDING_CANCELLATION, CANCELLED\n- PENDING_CANCELLATION: Cancel payout request is pending before cancellation\n- CANCELLED: A transaction has been successfully cancelled\n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutCancelStatus"
                        }
                      ]
                    },
                    "payoutId": {
                      "description": "This is a unique identifier generated by the Visa for a transaction and is key field used in the subsequent messages with in the transaction set example Notification, Returns, Cancel, Exception management via VD Portal for Payout and Reversals, Chargeback, Response, Advice for to Card. \n",
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/PayoutId"
                        }
                      ]
                    },
                    "clientReferenceId": {
                      "$ref": "#/components/schemas/ClientReferenceId-2"
                    },
                    "initiatingPartyId": {
                      "allOf": [
                        {
                          "$ref": "#/components/schemas/InitiatingPartyId-2"
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "OCTResponse-13": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-14"
            }
          }
        }
      },
      "OCTResponse-14": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-16"
            }
          }
        }
      },
      "500ErrorResponse-1": {
        "description": "Internal Server Error",
        "content": {
          "application/problem+json": {}
        }
      },
      "OCTResponse-11": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-12"
            }
          }
        }
      },
      "OCTResponse-12": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-13"
            }
          }
        }
      },
      "OCTResponse-10": {
        "description": "Successful OCT transaction response",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTResponseData-11"
            }
          }
        }
      },
      "400NotificationsErrorResponse-6": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-11"
            }
          }
        }
      },
      "400NotificationsErrorResponse-7": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-12"
            }
          }
        }
      },
      "QueryAccountResponse-1": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryOnlyResponse-1"
                }
              ]
            }
          }
        }
      },
      "400NotificationsErrorResponse-4": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/NotificationsErrorResponseWithKey"
            }
          }
        }
      },
      "QueryAccountResponse-2": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryOnlyResponse-2"
                }
              ]
            }
          }
        }
      },
      "400NotificationsErrorResponse-5": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-10"
            }
          }
        }
      },
      "QueryAccountResponse-3": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryOnlyResponse-3"
                }
              ]
            }
          }
        }
      },
      "400NotificationsErrorResponse-2": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/NotificationsErrorResponseWithKey-2"
            }
          }
        }
      },
      "400NotificationsErrorResponse-3": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/NotificationsErrorResponseWithKey-1"
            }
          }
        }
      },
      "QueryAccountResponse-4": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryOnlyResponse-4"
                }
              ]
            }
          }
        }
      },
      "QueryAccountResponse-5": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryOnlyResponse-5"
                }
              ]
            }
          }
        }
      },
      "400NotificationsErrorResponse-1": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/NotificationsErrorResponseWithKey-1"
            }
          }
        }
      },
      "#/components/responses/401ErrorResponse-2": {
        "description": "Request is unauthorized",
        "content": {
          "application/problem+json": {
            "schema": {
              "$ref": "#/components/schemas/401ErrorResponseWithKey-2"
            }
          }
        }
      },
      "400NotificationsErrorResponse": {
        "description": "When any field fails schematic validation or when any required field is missing or when request is inconsistent with the Request definitions.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey"
            }
          }
        }
      },
      "400ErrorResponses-8": {
        "description": "Comprehensive array of errors",
        "content": {
          "application/problem+json": {
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ErrorResponse"
              }
            }
          }
        }
      },
      "202CreatedResponse-1": {
        "description": "Transaction is accepted and will be processed & notified status.",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "transactionDetail"
              ],
              "properties": {
                "transactionalDetail": {
                  "required": [
                    "payoutId"
                  ],
                  "type": "object",
                  "properties": {
                    "payoutId": {
                      "$ref": "#/components/schemas/PayoutId"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "400ErrorResponses-6": {
        "description": "Comprehensive array of errors",
        "content": {
          "application/json": {
            "schema": {
              "items": {
                "$ref": "#/components/schemas/ErrorResponse-5"
              },
              "exampleSetFlag": false,
              "types": [
                "array"
              ]
            }
          }
        }
      },
      "429ErrorResponse": {
        "description": "Too Many Requests",
        "content": {
          "application/json": {}
        }
      },
      "400ErrorResponses-1": {
        "description": "Comprehensive array of errors",
        "content": {
          "application/problem+json": {
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ErrorResponse-1"
              }
            }
          }
        }
      },
      "400ErrorResponses-2": {
        "description": "Comprehensive array of errors",
        "content": {
          "application/problem+json": {
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ErrorResponse-3"
              }
            }
          }
        }
      },
      "403ErrorResponseNoBody": {
        "description": "Request is forbidden",
        "content": {
          "application/problem+json": {}
        }
      },
      "QueryResponseAccount-18": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-18"
                }
              ],
              "exampleSetFlag": false
            }
          }
        }
      },
      "QueryResponseAccount-19": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AccountQueryResponse-19"
            }
          }
        }
      },
      "GetPartialAccountBalanceResponse": {
        "description": "An array of the balances of the accounts for contracting or managed merchants. \nThe array can have a partial list of balances for all the currencies the merchant may have or has transacted with.    \n",
        "content": {
          "application/json": {
            "schema": {
              "type": "array",
              "items": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AccountBalanceWithTimestamp-2"
                  },
                  {
                    "required": [
                      "balance"
                    ],
                    "type": "object",
                    "properties": {
                      "balance": {
                        "$ref": "#/components/schemas/AccountBalance-1"
                      }
                    }
                  }
                ]
              }
            }
          }
        }
      },
      "QueryResponseAccount-14": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-14"
                }
              ]
            }
          }
        }
      },
      "QueryResponseAccount-15": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AccountQueryResponse-15"
            }
          }
        }
      },
      "QueryResponseAccount-16": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-16"
                }
              ]
            }
          }
        }
      },
      "QueryResponseAccount-17": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-17"
                }
              ]
            }
          }
        }
      },
      "QueryResponseAccount-10": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-10"
                }
              ]
            }
          }
        }
      },
      "QueryResponseAccount-11": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-11"
                }
              ]
            }
          }
        }
      },
      "QueryResponseAccount-12": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-12"
                }
              ]
            }
          }
        }
      },
      "QueryResponseAccount-13": {
        "description": "Transaction details response for account",
        "content": {
          "application/json": {
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AccountQueryResponse-13"
                }
              ]
            }
          }
        }
      },
      "503ErrorResponse-1": {
        "description": "Service Unavailable",
        "content": {
          "application/problem+json": {}
        }
      },
      "404ErrorResponse": {
        "description": "Resource not found",
        "content": {
          "application/json": {}
        }
      },
      "401ErrorResponse-16": {
        "description": "Request is unauthorized",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-12"
            }
          }
        }
      },
      "401ErrorResponse-15": {
        "description": "Request is unauthorized",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-11"
            }
          }
        }
      },
      "401ErrorResponse-14": {
        "description": "Request is unauthorized",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponseWithKey-10"
            }
          }
        }
      },
      "409ErrorResponse-1": {
        "description": "Conflict",
        "content": {
          "application/problem+json": {}
        }
      },
      "503ErrorResponse": {
        "description": "Service Unavailable",
        "content": {
          "application/json": {}
        }
      },
      "GetMetaDataResponse": {
        "description": "Returns the metadata of fields for creating the SendPayout request.\n\nNote:  \nGet Metadata API response varies based on the recipeint individual, recipient company and for a given country and currency combinations.\n\nSample response payload under the 'examples' represents different types of 'Identity groups' and 'Element Names' based on the given request parameters.\n",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/S2AMetaData"
            },
            "examples": {
              "GetMetadaResponse": {
                "value": {
                  "recipientDetail": {
                    "identityGroups": [
                      {
                        "groupName": "name",
                        "mandatory": true,
                        "groupLabel": "Recipient name details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The first name of the recipient",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first name of the recipient",
                            "displaySize": 35,
                            "elementName": "firstName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The last name of the recipient",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the family name of the recipient",
                            "displaySize": 35,
                            "elementName": "lastName",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "legalEntityIdentity",
                        "mandatory": true,
                        "groupLabel": "Legal Entity Identity",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Name of the company",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the name of the recipient company",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Registration number of the company",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the registration number of the recipient company",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Company registration ISO country",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code where recipient company is registered",
                            "displaySize": 2,
                            "elementName": "country"
                          }
                        ]
                      },
                      {
                        "groupName": "bank",
                        "mandatory": true,
                        "groupLabel": "Bank details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Bank Name",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the Bank Name",
                            "displaySize": 30,
                            "elementName": "bankName",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 70,
                            "subTitle": "Account Holder",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Account Holders Name",
                            "displaySize": 35,
                            "elementName": "accountName"
                          },
                          {
                            "locale": "en",
                            "maxSize": 34,
                            "subTitle": "Account",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Account Number",
                            "displaySize": 8,
                            "elementName": "accountNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Currency Code",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account currency code",
                            "displaySize": 3,
                            "elementName": "currencyCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Branch Code",
                            "tabOrder": 5,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account branch code",
                            "displaySize": 12,
                            "elementName": "branchCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "Country Code",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "this element contains ISO3166 country code (Alpha-3)",
                            "displaySize": 3,
                            "elementName": "countryCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 12,
                            "subTitle": "Bank Code",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Enter the Bank Code",
                            "displaySize": 12,
                            "elementName": "bankCode"
                          },
                          {
                            "locale": "en",
                            "maxSize": 8,
                            "subTitle": "Account Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Checking",
                                "value": "1"
                              },
                              {
                                "label": "Savings",
                                "value": "2"
                              },
                              {
                                "label": "Loan",
                                "value": "5"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Select the Account Type",
                            "displaySize": 8,
                            "elementName": "accountType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 7,
                            "subTitle": "Account Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "IBAN",
                                "value": "IBAN"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account number type. Valid values: 'IBAN' and 'DEFAULT'",
                            "displaySize": 7,
                            "elementName": "accountNumberType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 9,
                            "subTitle": "Bank Code Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "DEFAULT",
                                "value": "DEFAULT"
                              },
                              {
                                "label": "ABARouting",
                                "value": "ABA"
                              },
                              {
                                "label": "SORT_CODE",
                                "value": "SORT_CODE"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Recipient bank account - bank code type. Valid values: 'DEFAULT', 'ABA' and 'SORT_CODE'",
                            "displaySize": 9,
                            "elementName": "bankCodeType"
                          }
                        ]
                      },
                      {
                        "groupName": "address",
                        "mandatory": false,
                        "groupLabel": "Address details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "First line of address of recipient",
                            "tabOrder": 3,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the first line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine1",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 50,
                            "subTitle": "Second line of address of recipient",
                            "tabOrder": 4,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the second line of address of recipient",
                            "displaySize": 35,
                            "elementName": "addressLine2",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "City of residency of recipient",
                            "tabOrder": 6,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the city of residency of recipient",
                            "displaySize": 35,
                            "elementName": "city",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 25,
                            "subTitle": "State of residency of recipient",
                            "tabOrder": 7,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the state of residency of recipient",
                            "displaySize": 25,
                            "elementName": "state",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Postal Code of residency of recipient",
                            "tabOrder": 8,
                            "inputType": "text",
                            "mandatory": false,
                            "separator": "-",
                            "description": "Enter the Postal Code of residency of recipient",
                            "displaySize": 10,
                            "elementName": "postalCode",
                            "valueRegexp": "*"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO county of residency of recipient",
                            "tabOrder": 9,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Enter the ISO county code of residency of recipient",
                            "displaySize": 3,
                            "elementName": "country",
                            "valueRegexp": "*"
                          }
                        ]
                      },
                      {
                        "groupName": "contactInfo",
                        "mandatory": true,
                        "groupLabel": "Contact Information",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 16,
                            "subTitle": "Contact Number",
                            "tabOrder": 1,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number of recipient. Symbol + followed by digits, no other symbols, e.g. something like +447700123456 (note, refer ISO spec E.164)",
                            "displaySize": 16,
                            "elementName": "contactNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 210,
                            "subTitle": "Contact Email",
                            "tabOrder": 2,
                            "inputType": "text",
                            "mandatory": true,
                            "separator": "-",
                            "description": "Contact email of recipient",
                            "displaySize": 50,
                            "elementName": "contactEmail"
                          },
                          {
                            "locale": "en",
                            "maxSize": 6,
                            "subTitle": "Contact Number Type",
                            "tabOrder": 8,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "MOBILE",
                                "value": "MOBILE"
                              },
                              {
                                "label": "HOME",
                                "value": "HOME"
                              },
                              {
                                "label": "WORK",
                                "value": "WORK"
                              }
                            ],
                            "mandatory": true,
                            "separator": " ",
                            "description": "Contact Number Type can be 'MOBILE', 'WORK','HOME' ",
                            "displaySize": 6,
                            "elementName": "contactNumberType"
                          }
                        ]
                      },
                      {
                        "groupName": "identificationList",
                        "mandatory": false,
                        "groupLabel": "Identification details",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 1,
                            "subTitle": "Identification information of recipient",
                            "tabOrder": 10,
                            "inputType": "list",
                            "listItems": [
                              {
                                "label": "Passport",
                                "value": "P"
                              },
                              {
                                "label": "National ID Card",
                                "value": "N"
                              },
                              {
                                "label": "Driving License",
                                "value": "D"
                              }
                            ],
                            "mandatory": true,
                            "description": "Enter one of the identification information of recipient",
                            "displaySize": 5,
                            "elementName": "idType"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Identifier value of the document",
                            "tabOrder": 11,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the identifier value of the recipient document",
                            "displaySize": 10,
                            "elementName": "idNumber"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "ISO country of issue of the identification document",
                            "tabOrder": 12,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of issue of the recipient identification document",
                            "displaySize": 3,
                            "elementName": "idIssueCountry"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validFromDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "name"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validFromDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "value"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name (e.g. : validToDate) for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 14,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value (e.g. : validToDate) for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      },
                      {
                        "groupName": "birthInfo",
                        "mandatory": false,
                        "groupLabel": "birth information of recipient",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 10,
                            "subTitle": "The date of birth of the recipient",
                            "tabOrder": 15,
                            "inputType": "date",
                            "mandatory": true,
                            "description": "Enter the date of birth of the recipient",
                            "displaySize": 10,
                            "elementName": "dateOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "The city of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": false,
                            "description": "Enter the city of birth of the recipient",
                            "displaySize": 35,
                            "elementName": "cityOfBirth"
                          },
                          {
                            "locale": "en",
                            "maxSize": 3,
                            "subTitle": "The ISO country of birth of the recipient",
                            "tabOrder": 16,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter the ISO country code of birth of the recipient",
                            "displaySize": 3,
                            "elementName": "countryOfBirth"
                          }
                        ]
                      },
                      {
                        "groupName": "additionalData",
                        "mandatory": false,
                        "groupLabel": "Enter any additional data",
                        "identityFields": [
                          {
                            "locale": "en",
                            "maxSize": 35,
                            "subTitle": "Additional data parameter name",
                            "tabOrder": 18,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter parameter name for the additional data",
                            "displaySize": 35,
                            "elementName": "additionalDataKey"
                          },
                          {
                            "locale": "en",
                            "maxSize": 100,
                            "subTitle": "Additional data parameter value",
                            "tabOrder": 19,
                            "inputType": "text",
                            "mandatory": true,
                            "description": "Enter value for the additional data",
                            "displaySize": 100,
                            "elementName": "additionalDataValue"
                          }
                        ]
                      }
                    ]
                  },
                  "transactionDetail": {
                    "purposeOfPayment": {
                      "mandatory": true,
                      "purposeOfPaymentCodes": [
                        {
                          "code": "TAX",
                          "description": "Tax",
                          "senderIndividual": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MOR",
                          "description": "Mortgage",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "MIS",
                          "description": "Miscellaneous",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "SAL",
                          "description": "Salary/payroll",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "LOA",
                          "description": "Loan",
                          "senderCompany": true,
                          "recipientCompany": true
                        },
                        {
                          "code": "BUS",
                          "description": "Business/commercial payment",
                          "recipientCompany": true,
                          "senderIndividual": true
                        },
                        {
                          "code": "DEP",
                          "description": "Deposit",
                          "senderCompany": true,
                          "recipientIndividual": true
                        },
                        {
                          "code": "PEN",
                          "description": "Pension",
                          "recipientCompany": true,
                          "senderIndividual": true
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "parameters": {},
    "examples": {},
    "requestBodies": {
      "OCTRequest-2": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-2"
            }
          }
        },
        "required": true
      },
      "OCTRequest-12": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-12"
            }
          }
        },
        "required": true
      },
      "OCTRequest-3": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-3"
            }
          }
        },
        "required": true
      },
      "OCTRequest-11": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-11"
            }
          }
        },
        "required": true
      },
      "OCTRequest-4": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-4"
            }
          }
        },
        "required": true
      },
      "OCTRequest-10": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-10"
            }
          }
        },
        "required": true
      },
      "OCTRequest-5": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-5"
            }
          }
        },
        "required": true
      },
      "AFTRequest": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData"
            }
          }
        },
        "required": true
      },
      "OCTRequest-1": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-1"
            }
          }
        },
        "required": true
      },
      "OCTRequest-6": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-6"
            }
          }
        },
        "required": true
      },
      "OCTRequest-7": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-7"
            }
          }
        },
        "required": true
      },
      "OCTRequest-8": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-8"
            }
          }
        },
        "required": true
      },
      "OCTRequest-9": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-9"
            }
          }
        },
        "required": true
      },
      "OCTRequest": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData"
            }
          }
        },
        "required": true
      },
      "AFTRRequest-11": {
        "description": "Request body for creating AFT Reversal",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRRequestData-12"
            }
          }
        },
        "required": true
      },
      "AFTRequest-8": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-8"
            }
          }
        },
        "required": true
      },
      "AFTRequest-7": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-7"
            }
          }
        },
        "required": true
      },
      "AFTRequest-6": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-6"
            }
          }
        },
        "required": true
      },
      "AFTRRequest-6": {
        "description": "Request body for creating AFT Reversal",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRRequestData-6"
            }
          }
        },
        "required": true
      },
      "AFTRequest-5": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-5"
            }
          }
        },
        "required": true
      },
      "AFTRRequest-5": {
        "description": "Request body for creating AFT Reversal",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRRequestData-5"
            }
          }
        },
        "required": true
      },
      "AFTRequest-11": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-11"
            }
          }
        },
        "required": true
      },
      "AFTRRequest-3": {
        "description": "Request body for creating AFT Reversal",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRRequestData-3"
            }
          }
        },
        "required": true
      },
      "AFTRequest-10": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-10"
            }
          }
        },
        "required": true
      },
      "AFTRRequest-2": {
        "description": "Request body for creating AFT Reversal",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRRequestData-2"
            }
          }
        },
        "required": true
      },
      "AFTRequest-13": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-13"
            }
          }
        },
        "required": true
      },
      "AFTRRequest-1": {
        "description": "Request body for creating AFT Reversal",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRRequestData-1"
            }
          }
        },
        "required": true
      },
      "AFTRequest-9": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-9"
            }
          }
        },
        "required": true
      },
      "AFTRequest-12": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-12"
            }
          }
        },
        "required": true
      },
      "AFTRequest-4": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-4"
            }
          }
        },
        "required": true
      },
      "AFTRequest-3": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-3"
            }
          }
        },
        "required": true
      },
      "AFTRRequest": {
        "description": "Request body for creating AFT Reversal",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRRequestData"
            }
          }
        },
        "required": true
      },
      "AFTRequest-2": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-2"
            }
          }
        },
        "required": true
      },
      "AFTRequest-1": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-1"
            }
          }
        },
        "required": true
      },
      "AFTRequest-15": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-15"
            }
          }
        },
        "required": true
      },
      "AFTRequest-14": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-14"
            }
          }
        },
        "required": true
      },
      "AFTRequest-16": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-16"
            }
          }
        },
        "required": true
      },
      "OCTRequest-17": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-18"
            }
          }
        },
        "required": true
      },
      "OCTRequest-16": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-16"
            }
          }
        },
        "required": true
      },
      "OCTRequest-15": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-15"
            }
          }
        },
        "required": true
      },
      "AFTRequest-18": {
        "description": "Request body for creating AFT pull funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/AFTRequestData-18"
            }
          }
        },
        "required": true
      },
      "OCTRequest-14": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-14"
            }
          }
        },
        "required": true
      },
      "OCTRequest-13": {
        "description": "Request body for creating OCT push funds transfer",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/OCTRequestData-13"
            }
          }
        },
        "required": true
      }
    },
    "headers": {},
    "callbacks": {}
  },
  "webhooks": {
    "/visamoneymovement/v1/payouts/statusNotification": {
      "post": {
        "tags": [
          "Callback API-Initial Version - Deprecated"
        ],
        "summary": "Payout Status Notification",
        "description": "The purpose of the API is to \n  Enable Visa to provide updates of an payout transaction to Originating Entity",
        "operationId": "PayoutStatusNotification",
        "parameters": [
          {
            "name": "keyId",
            "in": "header",
            "required": false,
            "explode": false,
            "schema": {
              "$ref": "#/components/schemas/KeyId"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayoutNotification-6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "ok"
          },
          "400": {
            "$ref": "#/components/responses/400NotificationsErrorResponse-4"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "default": false,
            "operationPointer": "#/paths/~1visamoneymovement~1v1~1payouts~1statusNotification/post"
          }
        ],
        "x-hideSample": true,
        "x-hideTryIt": true
      }
    },
    "/v3/payouts/metadataChangeNotification": {
      "post": {
        "tags": [
          "Notification API"
        ],
        "summary": "Payout Metadata Change Notification",
        "description": "Clients using Get Payout Metadata API will need to subscribe to this notification.\nThe purpose of this API is to inform the clients when there is a change in payout metadata for a route or when there is a recall of the latest published version of metadata. \nWhen there is a recall clients would need to revert back to the previous version of metadata. A call to the Get Payout Metadata API endpoint would  always return the metadata version that is in effect.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/RouteDefinitionChangePerCountryAndCurrency-1"
                  },
                  {
                    "$ref": "#/components/schemas/RouteDefinitionChangePerCountryClusterAndCurrency-1"
                  },
                  {
                    "$ref": "#/components/schemas/RouteDefinitionRecallPerCountryAndCurrency-1"
                  },
                  {
                    "$ref": "#/components/schemas/RouteDefinitionRecallPerCountryClusterAndCurrency-1"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-12"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-hideTryIt": true
      }
    },
    "/v3/payouts/balanceNotification": {
      "post": {
        "tags": [
          "Notification API"
        ],
        "summary": "Account Balance Notification",
        "description": "The purpose of this API is to provide virtual account (i.e. VAN) balance data driven by client's configuration and usage",
        "operationId": "BalanceNotification",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BalanceNotification-3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-5"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-hideTryIt": true
      }
    },
    "/visamoneymovement/v1/payouts/return": {
      "post": {
        "tags": [
          "Callback API-Initial Version - Deprecated"
        ],
        "summary": "Payout Return Notification",
        "description": "This API provides the Originating Entity with the ability to receive notifications on returns associated with their payouts",
        "operationId": "PayoutReturnNotification",
        "parameters": [
          {
            "name": "keyId",
            "in": "header",
            "required": false,
            "explode": false,
            "schema": {
              "$ref": "#/components/schemas/KeyId"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayoutReturnRequest-2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "ok"
          },
          "400": {
            "$ref": "#/components/responses/400NotificationsErrorResponse-4"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "default": false,
            "operationPointer": "#/paths/~1visamoneymovement~1v1~1payouts~1return/post"
          }
        ],
        "x-hideSample": true,
        "x-hideTryIt": true
      }
    },
    "/v3/visadirect-connect/payouts/statusNotification": {
      "post": {
        "tags": [
          "Notification API"
        ],
        "summary": "Payout Status Notification",
        "description": "The purpose of the API is to \n  Enable Visa to provide updates of an payout transaction to Originating Entity",
        "operationId": "PayoutStatusNotification",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayoutNotification-19"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "ok"
          },
          "400": {
            "$ref": "#/components/responses/400NotificationsErrorResponse-6"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-hideTryIt": true
      }
    },
    "/v3/payouts/flexibleSettlementNotification": {
      "post": {
        "tags": [
          "Notification API"
        ],
        "summary": "Flexible Settlement Notification",
        "description": "The purpose of this API is to provide flexible settlement notification to merchants to manage their flexible Settlement agreement",
        "operationId": "FlexibleSettlementNotification",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FlexibleSettlementNotification-14"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "$ref": "#/components/responses/400NotificationsErrorResponse-1"
          },
          "401": {
            "$ref": "#/components/responses/401ErrorResponseNoBody"
          },
          "403": {
            "$ref": "#/components/responses/403ErrorResponseNoBody"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-hideTryIt": true
      }
    },
    "/visamoneymovement/v1/payouts/ledgerNotification": {
      "post": {
        "tags": [
          "Callback API-Initial Version - Deprecated"
        ],
        "summary": "Ledger Notification",
        "description": "The purpose of this API is to provide information on various ledger entries received.",
        "operationId": "Debit Credit Advice POST",
        "requestBody": {
          "description": "OriginatorLedgerNotification body",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OriginatorLedgerNotification"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {}
          },
          "400": {
            "description": "When any field validation fails or when any required field is missing or when request is inconsistent with the Request definitions.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse-2"
                }
              }
            }
          },
          "403": {
            "description": "Request is forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse-2"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse-2"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse-2"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse-2"
                }
              }
            }
          }
        },
        "x-name": "ReturnToOriginator POST",
        "x-codegen-request-body-name": "OriginatorLedgerNotification",
        "x-slug": "OriginatorLedgerNotification",
        "x-tags": [
          "OriginatorLedgerNotification"
        ],
        "x-hideTryIt": true
      }
    },
    "/visamoneymovement/v1/payouts/balanceNotification": {
      "post": {
        "tags": [
          "Callback API-Initial Version - Deprecated"
        ],
        "summary": "Balance Notification",
        "description": "The purpose of this API is to provide virtual account (i.e. VAN) balance data driven by client's configuration and usage",
        "operationId": "BalanceNotification",
        "parameters": [
          {
            "name": "keyId",
            "in": "header",
            "required": false,
            "explode": false,
            "schema": {
              "$ref": "#/components/schemas/KeyId"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BalanceNotification-2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "$ref": "#/components/responses/400ErrorResponse-5"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-operationVersions": [
          {
            "label": "v1 - Latest",
            "default": false,
            "operationPointer": "#/paths/~1visamoneymovement~1v1~1payouts~1balanceNotification/post"
          }
        ],
        "x-hideSample": true,
        "x-hideTryIt": true
      }
    },
    "/v3/payouts/return": {
      "post": {
        "tags": [
          "Notification API"
        ],
        "summary": "Payout Return Notification",
        "description": "This API provides the Originating Entity with the ability to receive notifications on returns associated with their payouts",
        "operationId": "PayoutReturnNotification",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayoutReturnRequest-5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "ok"
          },
          "400": {
            "$ref": "#/components/responses/400NotificationsErrorResponse-3"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse-1"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse-1"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse-1"
          }
        },
        "x-hideTryIt": true
      }
    },
    "/v3/payouts/ledgerNotification": {
      "post": {
        "tags": [
          "Notification API"
        ],
        "summary": "Ledger Notification",
        "description": "The purpose of this API is to provide information on various ledger entries received.",
        "operationId": "LedgerNotification",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LedgerNotification-12"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "$ref": "#/components/responses/400NotificationsErrorResponse-5"
          },
          "404": {
            "$ref": "#/components/responses/404ErrorResponse"
          },
          "500": {
            "$ref": "#/components/responses/500ErrorResponse"
          },
          "503": {
            "$ref": "#/components/responses/503ErrorResponse"
          }
        },
        "x-hideTryIt": true
      }
    }
  },
  "x-tagGroups": [
    {
      "name": "API Reference",
      "tags": [
        "Callback API-Initial Version - Deprecated",
        "Eligibility",
        "Exception Management",
        "Get Requirements",
        "Notification API",
        "Payin",
        "Payout",
        "Transaction Management",
        "Transactional API - Initial Version - Deprecated",
        "Validate",
        "Verify"
      ]
    }
  ]
}
```
