{
  "openapi" : "3.0.2",
  "info" : {
    "title" : "Swift India JV C2B Payments",
    "description" : "APIs for JVIN Payments and Cash Management. Elements are aligned to message templates n MyStandards for compatibility.\nSwift India JV (JVIN) C2B API for payment initiation and reporting (batch\npayments)\n",
    "contact" : {
      "name" : "Developer Hub",
      "url" : "https://developer.swift.com",
      "email" : "developer-support@swift.com"
    },
    "license" : {
      "name" : "API Open License",
      "url" : "https://www.swift.com/about-us/legal/swift-terms-and-conditions/other-terms-and-conditions#APIcontractualdocumentation"
    },
    "version" : "1.1.0"
  },
  "servers" : [ {
    "url" : "https://sandbox.swift.com/swift-c2b-payments/v1",
    "description" : "URL for Sandbox Environment."
  }, {
    "url" : "https://api-test.swiftnet.sipn.swift.com/swift-c2b-payments/v1",
    "description" : "URL for Apigee (SDK consumer) Pilot."
  }, {
    "url" : "https://api.swiftnet.sipn.swift.com/swift-c2b-payments/v1",
    "description" : "URL for Apigee (SDK consumer) Live."
  } ],
  "security" : [ {
    "oauthBearerToken" : [ ]
  }, {
    "oAuth2" : [ ]
  } ],
  "tags" : [ {
    "name" : "jVIndiaPCM"
  } ],
  "paths" : {
    "/payment-initiation" : {
      "post" : {
        "tags" : [ "jVIndiaPCM" ],
        "summary" : "Sends a (batch) payment initiation to the Bank.",
        "description" : "Sends a (batch) payment initiation to the Bank. Note that the batch payment should fit in 1 API (maximum size depending on API gateway). If more payments need to be transferred, then split in 2 batches.",
        "operationId" : "createRestrictedJVINPaymentInitiationData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/X-Request-ID"
        }, {
          "$ref" : "#/components/parameters/X-BIC"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PostRestrictedJVINPaymentInitiationData1"
              },
              "example" : {
                "batch_payment_initiation_identification" : "ourbatchpayment123",
                "creation_date_time" : "2025-05-07T11:23:12.000Z",
                "control_sum" : "200000",
                "initiating_party" : {
                  "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                  "identification" : {
                    "any_bic" : "SDOMINBIXXX"
                  }
                },
                "number_of_transactions" : "1",
                "payment_information" : [ {
                  "payment_information_identification" : "paymentgroupref1",
                  "payment_method" : "TRF",
                  "instruction_priority" : "HIGH",
                  "service_level" : "URGP",
                  "local_instrument" : "RTGS",
                  "category_purpose" : "SUPP",
                  "requested_execution_date" : "2025-05-08",
                  "debtor" : {
                    "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD"
                  },
                  "debtor_account" : {
                    "identification" : "1234567890",
                    "currency" : "INR"
                  },
                  "debtor_agent" : {
                    "bicfi" : "ICICINBBXXX",
                    "country" : "IN"
                  },
                  "credit_transfer_transaction_information" : [ {
                    "instruction_identification" : "R41.2020",
                    "end_to_end_identification" : "/XUTR/1234567890123456",
                    "uetr" : "f47ac10b-58cc-4372-a567-0e02b2c3d479",
                    "instructed_amount" : {
                      "currency" : "INR",
                      "amount" : "200000"
                    },
                    "creditor_agent" : {
                      "bicfi" : "BARBINBBXXX",
                      "country" : "IN"
                    },
                    "creditor" : {
                      "name" : "MUKTA COMPUTER SERVICES LTD",
                      "address_line" : [ "Unit No.1403, 14th Floor, The Capital,", "Plot No. C-70, G Block,", "Mumbai", "Maharashtra 400051" ]
                    },
                    "creditor_account" : {
                      "identification" : "98765432109876543210",
                      "currency" : "INR"
                    },
                    "remittance_information" : {
                      "unstructured" : "Invoice 31415. Thanks for the great service."
                    }
                  } ]
                } ]
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Scope\r\nRestrictedJVINPaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\r\n\r\nUsage\r\nRestrictedJVINPaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\r\nThe API is used to exchange:\r\n- One or more instances of a credit transfer initiation;\r\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\r\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\r\n\r\nThe API can be used in the following scenarios:\r\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\r\n- The API can also be used by an initiating party that has authority to send the message on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\r\n- The API can be used in domestic and cross-border scenarios.\r\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.\r\n\r\nRule: ChargeBearerPayOrTranLevel\r\nFor each Customer Credit Transfer Initiation, the following elements are mutually exclusive: Charge Bearer at Payment Information level and Charge Bearer at Transaction level and all may be absent\r\n\r\nRule: INTranSrvclv-optionalCHQ_L1\r\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\r\n\r\nRule: INTranSrvclvloptionalCHQ_L2\r\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\r\n\r\nRule: INTranLclInstrm-mandatoryCHQ_L1\r\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present\r\n\r\nRule: INTranLclInstrm-mandatoryCHQ_L2\r\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestrictedJVINPaymentInitiationData1BatchPaymentReference"
                },
                "example" : {
                  "batch_payment_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
                }
              }
            },
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            }
          },
          "400" : {
            "description" : "A 400 Bad Request response status is returned for validation or other business errors.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ErrorMessage"
                },
                "examples" : {
                  "400-SwAP510" : {
                    "$ref" : "#/components/examples/400-SwAP510"
                  },
                  "400-SwAP509" : {
                    "$ref" : "#/components/examples/400-SwAP509"
                  },
                  "400-SwAP504-txt" : {
                    "$ref" : "#/components/examples/400-SwAP504-txt"
                  },
                  "400-SwAP504-bic" : {
                    "$ref" : "#/components/examples/400-SwAP504-bic"
                  },
                  "400-SwAP504-svc" : {
                    "$ref" : "#/components/examples/400-SwAP504-svc"
                  },
                  "400-SwAP522" : {
                    "$ref" : "#/components/examples/400-SwAP522"
                  },
                  "400-SwAP504" : {
                    "$ref" : "#/components/examples/400-SwAP504"
                  },
                  "400-SwAP505" : {
                    "$ref" : "#/components/examples/400-SwAP505"
                  },
                  "400-SwAP501" : {
                    "$ref" : "#/components/examples/400-SwAP501"
                  }
                }
              }
            }
          },
          "401" : {
            "$ref" : "#/components/responses/401-Unauthorized"
          },
          "403" : {
            "$ref" : "#/components/responses/403-Forbidden"
          },
          "404" : {
            "$ref" : "#/components/responses/404-NotFound"
          },
          "429" : {
            "$ref" : "#/components/responses/429-TooManyRequests"
          },
          "503" : {
            "$ref" : "#/components/responses/503-ServiceUnavailable"
          },
          "504" : {
            "$ref" : "#/components/responses/504-GatewayTimeout"
          }
        }
      }
    },
    "/payment-initiation/{batch_payment_reference}" : {
      "get" : {
        "tags" : [ "jVIndiaPCM" ],
        "summary" : "Retrieves the previously sent (batch) payment initiation.",
        "description" : "Retrieves the previously sent (batch) payment initiation.",
        "operationId" : "fetchRestrictedJVINPaymentInitiationData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/X-Request-ID"
        }, {
          "$ref" : "#/components/parameters/X-BIC"
        }, {
          "name" : "batch_payment_reference",
          "in" : "path",
          "description" : "Unique technical identification of the batch payment initiation as defined by the bank's server. \r\n\r\nNote: The corporate does not use this field when first submitting the batch payment initiation. but it should be used when subsequently retrieving the batch payment initiation.",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "pattern" : "[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}",
            "type" : "string",
            "description" : "Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "example" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
        } ],
        "responses" : {
          "200" : {
            "description" : "Scope\r\nRestrictedJVINPaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\r\n\r\nUsage\r\nRestrictedJVINPaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\r\nThe API is used to exchange:\r\n- One or more instances of a credit transfer initiation;\r\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\r\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\r\n\r\nThe API can be used in the following scenarios:\r\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\r\n- The API can also be used by an initiating party that has authority to send the message on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\r\n- The API can be used in domestic and cross-border scenarios.\r\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.\r\n\r\nRule: ChargeBearerPayOrTranLevel\r\nFor each Customer Credit Transfer Initiation, the following elements are mutually exclusive: Charge Bearer at Payment Information level and Charge Bearer at Transaction level and all may be absent\r\n\r\nRule: INTranSrvclv-optionalCHQ_L1\r\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\r\n\r\nRule: INTranSrvclvloptionalCHQ_L2\r\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\r\n\r\nRule: INTranLclInstrm-mandatoryCHQ_L1\r\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present\r\n\r\nRule: INTranLclInstrm-mandatoryCHQ_L2\r\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestrictedJVINPaymentInitiationData1"
                },
                "example" : {
                  "batch_payment_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e",
                  "batch_payment_initiation_identification" : "ourbatchpayment123",
                  "creation_date_time" : "2025-05-07T11:23:12.000Z",
                  "control_sum" : "200000",
                  "initiating_party" : {
                    "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                    "identification" : {
                      "any_bic" : "SDOMINBIXXX"
                    }
                  },
                  "number_of_transactions" : "1",
                  "payment_information" : [ {
                    "payment_information_identification" : "paymentgroupref1",
                    "payment_method" : "TRF",
                    "instruction_priority" : "HIGH",
                    "service_level" : "URGP",
                    "local_instrument" : "RTGS",
                    "category_purpose" : "SUPP",
                    "requested_execution_date" : "2025-05-08",
                    "debtor" : {
                      "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD"
                    },
                    "debtor_account" : {
                      "identification" : "1234567890",
                      "currency" : "INR"
                    },
                    "debtor_agent" : {
                      "bicfi" : "ICICINBBXXX",
                      "country" : "IN"
                    },
                    "credit_transfer_transaction_information" : [ {
                      "instruction_identification" : "R41.2020",
                      "end_to_end_identification" : "/XUTR/1234567890123456",
                      "uetr" : "f47ac10b-58cc-4372-a567-0e02b2c3d479",
                      "instructed_amount" : {
                        "currency" : "INR",
                        "amount" : "200000"
                      },
                      "creditor_agent" : {
                        "bicfi" : "BARBINBBXXX",
                        "country" : "IN"
                      },
                      "creditor" : {
                        "name" : "MUKTA COMPUTER SERVICES LTD",
                        "address_line" : [ "Unit No.1403, 14th Floor, The Capital,", "Plot No. C-70, G Block,", "Mumbai", "Maharashtra 400051" ]
                      },
                      "creditor_account" : {
                        "identification" : "98765432109876543210",
                        "currency" : "INR"
                      },
                      "remittance_information" : {
                        "unstructured" : "Invoice 31415. Thanks for the great service."
                      }
                    } ]
                  } ]
                }
              }
            }
          },
          "400" : {
            "description" : "A 400 Bad Request response status is returned for validation or other business errors.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ErrorMessage"
                },
                "examples" : {
                  "400-SwAP510" : {
                    "$ref" : "#/components/examples/400-SwAP510"
                  },
                  "400-SwAP509" : {
                    "$ref" : "#/components/examples/400-SwAP509"
                  },
                  "400-SwAP504-txt" : {
                    "$ref" : "#/components/examples/400-SwAP504-txt"
                  },
                  "400-SwAP504-bic" : {
                    "$ref" : "#/components/examples/400-SwAP504-bic"
                  },
                  "400-SwAP504-svc" : {
                    "$ref" : "#/components/examples/400-SwAP504-svc"
                  },
                  "400-SwAP522" : {
                    "$ref" : "#/components/examples/400-SwAP522"
                  },
                  "400-SwAP504" : {
                    "$ref" : "#/components/examples/400-SwAP504"
                  },
                  "400-SwAP505" : {
                    "$ref" : "#/components/examples/400-SwAP505"
                  },
                  "400-SwAP501" : {
                    "$ref" : "#/components/examples/400-SwAP501"
                  }
                }
              }
            }
          },
          "401" : {
            "$ref" : "#/components/responses/401-Unauthorized"
          },
          "403" : {
            "$ref" : "#/components/responses/403-Forbidden"
          },
          "404" : {
            "$ref" : "#/components/responses/404-NotFound"
          },
          "429" : {
            "$ref" : "#/components/responses/429-TooManyRequests"
          },
          "503" : {
            "$ref" : "#/components/responses/503-ServiceUnavailable"
          },
          "504" : {
            "$ref" : "#/components/responses/504-GatewayTimeout"
          }
        }
      }
    },
    "/payment-status-report/{report_reference}" : {
      "get" : {
        "tags" : [ "jVIndiaPCM" ],
        "summary" : "Retrieves a (batch) payment status report previously sent to the Customer.",
        "description" : "Retrieves a (batch) payment status report previously sent to the Customer.",
        "operationId" : "fetchRestrictedJVINCustomerPaymentStatusReportData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/X-Request-ID"
        }, {
          "$ref" : "#/components/parameters/X-BIC"
        }, {
          "name" : "report_reference",
          "in" : "path",
          "description" : "Unique technical identification of the customer payment status report as defined by the customer's server. \r\n\r\nNote: The customerdoes not use this field when first submitting the customer payment status report. but it should be used when subsequently retrieving the customer payment status report.",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "pattern" : "[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}",
            "type" : "string",
            "description" : "Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "example" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
        } ],
        "responses" : {
          "200" : {
            "description" : "Scope\r\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\r\n\r\nUsage\r\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\r\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\r\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\r\nThe API can be used in domestic and cross-border scenarios.\r\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestrictedJVINCustomerPaymentStatusReportData1"
                },
                "example" : {
                  "report_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e",
                  "customer_payment_status_report_identification" : "Report001",
                  "creation_date_time" : "2025-05-07T11:23:32.000Z",
                  "initiating_party_name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                  "initiating_party_bic" : "SDOMINBIXXX",
                  "original_batch_payment_reference" : "e58ed763-928c-4155-bee9-fdbaaadc15f3",
                  "original_batch_payment_initiation_identification" : "ourbatchpayment123",
                  "original_creation_date_time" : "2025-05-07T11:23:12.000Z",
                  "original_number_of_transactions" : "1",
                  "original_control_sum" : "200000",
                  "original_payment_information_and_status" : [ {
                    "original_payment_information_identification" : "paymentgroupref1",
                    "transaction_information_and_status" : [ {
                      "status_identification" : "status001",
                      "original_instruction_identification" : "R41.2020",
                      "original_end_to_end_identification" : "/XUTR/1234567890123456",
                      "original_uetr" : "f47ac10b-58cc-4372-a567-0e02b2c3d479",
                      "transaction_status" : "ACCP",
                      "status_reason_information_code" : [ "DS07" ],
                      "clearing_system_reference" : "UTR001",
                      "original_transaction_reference" : {
                        "amount" : {
                          "instructed_amount" : {
                            "amount" : "200000",
                            "currency" : "INR"
                          }
                        },
                        "requested_execution_date" : {
                          "date" : "2025-05-08"
                        },
                        "instruction_priority" : "HIGH",
                        "clearing_channel" : "RTGS",
                        "service_level" : "URGP",
                        "local_instrument" : "RTGS",
                        "sequence_type" : "FRST",
                        "category_purpose" : "SUPP",
                        "debtor_agent" : {
                          "bicfi" : "ICICINBBXXX"
                        },
                        "debtor_name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                        "debtor_account" : "1234567890",
                        "creditor_agent" : {
                          "bicfi" : "BARBINBBXXX"
                        },
                        "creditor_name" : "MUKTA COMPUTER SERVICES LTD",
                        "creditor_account" : {
                          "identification" : "98765432109876543210"
                        }
                      }
                    } ]
                  } ]
                }
              }
            }
          },
          "400" : {
            "description" : "A 400 Bad Request response status is returned for validation or other business errors.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ErrorMessage"
                },
                "examples" : {
                  "400-SwAP510" : {
                    "$ref" : "#/components/examples/400-SwAP510"
                  },
                  "400-SwAP509" : {
                    "$ref" : "#/components/examples/400-SwAP509"
                  },
                  "400-SwAP504-txt" : {
                    "$ref" : "#/components/examples/400-SwAP504-txt"
                  },
                  "400-SwAP504-bic" : {
                    "$ref" : "#/components/examples/400-SwAP504-bic"
                  },
                  "400-SwAP504-svc" : {
                    "$ref" : "#/components/examples/400-SwAP504-svc"
                  },
                  "400-SwAP522" : {
                    "$ref" : "#/components/examples/400-SwAP522"
                  },
                  "400-SwAP504" : {
                    "$ref" : "#/components/examples/400-SwAP504"
                  },
                  "400-SwAP505" : {
                    "$ref" : "#/components/examples/400-SwAP505"
                  },
                  "400-SwAP501" : {
                    "$ref" : "#/components/examples/400-SwAP501"
                  }
                }
              }
            }
          },
          "401" : {
            "$ref" : "#/components/responses/401-Unauthorized"
          },
          "403" : {
            "$ref" : "#/components/responses/403-Forbidden"
          },
          "404" : {
            "$ref" : "#/components/responses/404-NotFound"
          },
          "429" : {
            "$ref" : "#/components/responses/429-TooManyRequests"
          },
          "503" : {
            "$ref" : "#/components/responses/503-ServiceUnavailable"
          },
          "504" : {
            "$ref" : "#/components/responses/504-GatewayTimeout"
          }
        }
      }
    },
    "/payment-status-report" : {
      "post" : {
        "tags" : [ "jVIndiaPCM" ],
        "summary" : "Sends a (batch) payment status report to the Customer.",
        "description" : "Sends a (batch) payment status report to the Customer.",
        "operationId" : "createRestrictedJVINCustomerPaymentStatusReportData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/X-Request-ID"
        }, {
          "$ref" : "#/components/parameters/X-BIC"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PostRestrictedJVINCustomerPaymentStatusReportData1"
              },
              "example" : {
                "customer_payment_status_report_identification" : "Report001",
                "creation_date_time" : "2025-05-07T11:23:32.000Z",
                "initiating_party_name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                "initiating_party_bic" : "SDOMINBIXXX",
                "original_batch_payment_reference" : "e58ed763-928c-4155-bee9-fdbaaadc15f3",
                "original_batch_payment_initiation_identification" : "ourbatchpayment123",
                "original_creation_date_time" : "2025-05-07T11:23:12.000Z",
                "original_number_of_transactions" : "1",
                "original_control_sum" : "200000",
                "original_payment_information_and_status" : [ {
                  "original_payment_information_identification" : "paymentgroupref1",
                  "transaction_information_and_status" : [ {
                    "status_identification" : "status001",
                    "original_instruction_identification" : "R41.2020",
                    "original_end_to_end_identification" : "/XUTR/1234567890123456",
                    "original_uetr" : "f47ac10b-58cc-4372-a567-0e02b2c3d479",
                    "transaction_status" : "ACCP",
                    "status_reason_information_code" : [ "DS07" ],
                    "clearing_system_reference" : "UTR001",
                    "original_transaction_reference" : {
                      "amount" : {
                        "instructed_amount" : {
                          "amount" : "200000",
                          "currency" : "INR"
                        }
                      },
                      "requested_execution_date" : {
                        "date" : "2025-05-08"
                      },
                      "instruction_priority" : "HIGH",
                      "clearing_channel" : "RTGS",
                      "service_level" : "URGP",
                      "local_instrument" : "RTGS",
                      "sequence_type" : "FRST",
                      "category_purpose" : "SUPP",
                      "debtor_agent" : {
                        "bicfi" : "ICICINBBXXX"
                      },
                      "debtor_name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                      "debtor_account" : "1234567890",
                      "creditor_agent" : {
                        "bicfi" : "BARBINBBXXX"
                      },
                      "creditor_name" : "MUKTA COMPUTER SERVICES LTD",
                      "creditor_account" : {
                        "identification" : "98765432109876543210"
                      }
                    }
                  } ]
                } ]
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Scope\r\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\r\n\r\nUsage\r\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\r\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\r\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\r\nThe API can be used in domestic and cross-border scenarios.\r\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestrictedJVINCustomerPaymentStatusReportData1ReportReference"
                },
                "example" : {
                  "report_reference" : "f47ac10b-58cc-4372-a567-0e02b2c3d479"
                }
              }
            }
          },
          "400" : {
            "description" : "A 400 Bad Request response status is returned for validation or other business errors.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ErrorMessage"
                },
                "examples" : {
                  "400-SwAP510" : {
                    "$ref" : "#/components/examples/400-SwAP510"
                  },
                  "400-SwAP509" : {
                    "$ref" : "#/components/examples/400-SwAP509"
                  },
                  "400-SwAP504-txt" : {
                    "$ref" : "#/components/examples/400-SwAP504-txt"
                  },
                  "400-SwAP504-bic" : {
                    "$ref" : "#/components/examples/400-SwAP504-bic"
                  },
                  "400-SwAP504-svc" : {
                    "$ref" : "#/components/examples/400-SwAP504-svc"
                  },
                  "400-SwAP522" : {
                    "$ref" : "#/components/examples/400-SwAP522"
                  },
                  "400-SwAP504" : {
                    "$ref" : "#/components/examples/400-SwAP504"
                  },
                  "400-SwAP505" : {
                    "$ref" : "#/components/examples/400-SwAP505"
                  },
                  "400-SwAP501" : {
                    "$ref" : "#/components/examples/400-SwAP501"
                  }
                }
              }
            }
          },
          "401" : {
            "$ref" : "#/components/responses/401-Unauthorized"
          },
          "403" : {
            "$ref" : "#/components/responses/403-Forbidden"
          },
          "404" : {
            "$ref" : "#/components/responses/404-NotFound"
          },
          "429" : {
            "$ref" : "#/components/responses/429-TooManyRequests"
          },
          "503" : {
            "$ref" : "#/components/responses/503-ServiceUnavailable"
          },
          "504" : {
            "$ref" : "#/components/responses/504-GatewayTimeout"
          }
        }
      }
    },
    "/a1a2-payment-initiation/{batch_payment_reference}" : {
      "get" : {
        "tags" : [ "jVIndiaPCM" ],
        "summary" : "Retrieves the previously sent (batch) payment initiation, includes the A1A2 dataset for foreign remittance.",
        "description" : "Retrieves the previously sent (batch) payment initiation, includes the A1A2 dataset for foreign remittance.",
        "operationId" : "fetchRestrictedJVINAAPaymentInitiationData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/X-Request-ID"
        }, {
          "$ref" : "#/components/parameters/X-BIC"
        }, {
          "name" : "batch_payment_reference",
          "in" : "path",
          "description" : "Unique technical identification of the batch payment initiation as defined by the bank's server. \r\n\r\nNote: The corporate does not use this field when first submitting the batch payment initiation. but it should be used when subsequently retrieving the batch payment initiation.",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "pattern" : "[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}",
            "type" : "string",
            "description" : "Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "example" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
        } ],
        "responses" : {
          "200" : {
            "description" : "Scope\r\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\r\n\r\nUsage\r\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\r\nThe API is used to exchange:\r\n- One or more instances of a credit transfer initiation;\r\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\r\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\r\n\r\nThe API can be used in the following scenarios:\r\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\r\n- The API can also be used by an initiating party that has authority to send the API on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\r\n- The API can be used in domestic and cross-border scenarios.\r\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestrictedJVINA1A2PaymentInitiationData1"
                },
                "example" : {
                  "batch_payment_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e",
                  "batch_payment_initiation_identification" : "ourbatchpayment123",
                  "creation_date_time" : "2025-05-07T11:23:12.000Z",
                  "number_of_transactions" : "1",
                  "control_sum" : "200000",
                  "initiating_party" : {
                    "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                    "identification" : {
                      "any_bic" : "SDOMINBIXXX"
                    }
                  },
                  "payment_information" : [ {
                    "payment_information_identification" : "paymentgroupref1",
                    "payment_method" : "TRF",
                    "instruction_priority" : "HIGH",
                    "service_level" : "URGP",
                    "local_instrument" : "RTGS",
                    "category_purpose" : "SUPP",
                    "requested_execution_date" : "2025-05-08",
                    "debtor" : {
                      "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD"
                    },
                    "debtor_account" : {
                      "identification" : "1234567890",
                      "currency" : "INR"
                    },
                    "debtor_agent" : {
                      "bicfi" : "ICICINBBXXX",
                      "country" : "IN"
                    },
                    "credit_transfer_transaction_information" : [ {
                      "instruction_identification" : "R41.2020",
                      "end_to_end_identification" : "/XUTR/1234567890123456",
                      "uetr" : "f47ac10b-58cc-4372-a567-0e02b2c3d479",
                      "instructed_amount" : {
                        "currency" : "INR",
                        "amount" : "200000"
                      },
                      "creditor_agent" : {
                        "bicfi" : "BARBINBBXXX",
                        "country" : "IN"
                      },
                      "creditor" : {
                        "name" : "MUKTA COMPUTER SERVICES LTD",
                        "address_line" : [ "Unit No.1403, 14th Floor, The Capital,", "Plot No. C-70, G Block,", "Mumbai", "Maharashtra 400051" ]
                      },
                      "creditor_account" : {
                        "identification" : "98765432109876543210",
                        "currency" : "INR"
                      },
                      "remittance_information" : {
                        "unstructured" : "Invoice 31415. Thanks for the great service."
                      },
                      "foreign_remittance_data" : {
                        "foreign_remittance_purpose" : [ "SERV" ],
                        "additional_information_for_banks" : [ "Specialist consulting service." ],
                        "invoice_data" : [ {
                          "goods_and_services_data" : [ {
                            "description_of_goods_services" : [ "lkjlkjlkj" ]
                          } ],
                          "invoice_number" : "31415",
                          "invoice_date" : "2025-05-02",
                          "invoice_amount" : {
                            "currency" : "INR",
                            "amount" : "200000"
                          },
                          "net_payable_amount" : {
                            "currency" : "INR",
                            "amount" : "200000"
                          }
                        } ],
                        "summary_data" : {
                          "total_remittance_amount" : {
                            "currency" : "INR",
                            "amount" : "200000"
                          },
                          "value_date_of_remittance" : "2025-05-08"
                        }
                      }
                    } ]
                  } ]
                }
              }
            }
          },
          "400" : {
            "description" : "A 400 Bad Request response status is returned for validation or other business errors.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ErrorMessage"
                },
                "examples" : {
                  "400-SwAP510" : {
                    "$ref" : "#/components/examples/400-SwAP510"
                  },
                  "400-SwAP509" : {
                    "$ref" : "#/components/examples/400-SwAP509"
                  },
                  "400-SwAP504-txt" : {
                    "$ref" : "#/components/examples/400-SwAP504-txt"
                  },
                  "400-SwAP504-bic" : {
                    "$ref" : "#/components/examples/400-SwAP504-bic"
                  },
                  "400-SwAP504-svc" : {
                    "$ref" : "#/components/examples/400-SwAP504-svc"
                  },
                  "400-SwAP522" : {
                    "$ref" : "#/components/examples/400-SwAP522"
                  },
                  "400-SwAP504" : {
                    "$ref" : "#/components/examples/400-SwAP504"
                  },
                  "400-SwAP505" : {
                    "$ref" : "#/components/examples/400-SwAP505"
                  },
                  "400-SwAP501" : {
                    "$ref" : "#/components/examples/400-SwAP501"
                  }
                }
              }
            }
          },
          "401" : {
            "$ref" : "#/components/responses/401-Unauthorized"
          },
          "403" : {
            "$ref" : "#/components/responses/403-Forbidden"
          },
          "404" : {
            "$ref" : "#/components/responses/404-NotFound"
          },
          "429" : {
            "$ref" : "#/components/responses/429-TooManyRequests"
          },
          "503" : {
            "$ref" : "#/components/responses/503-ServiceUnavailable"
          },
          "504" : {
            "$ref" : "#/components/responses/504-GatewayTimeout"
          }
        }
      }
    },
    "/a1a2-payment-initiation" : {
      "post" : {
        "tags" : [ "jVIndiaPCM" ],
        "summary" : "Sends a (batch) payment initiation to the Bank, includes the A1A2 dataset for foreign remittance.",
        "description" : "Sends a (batch) payment initiation to the Bank, includes the A1A2 dataset for foreign remittance. Note that the batch payment should fit in 1 API (maximum size depending on API gateway). If more payments need to be transferred, then split in 2 batches.",
        "operationId" : "createRestrictedJVINAAPaymentInitiationData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/X-Request-ID"
        }, {
          "$ref" : "#/components/parameters/X-BIC"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PostRestrictedJVINA1A2PaymentInitiationData1"
              },
              "example" : {
                "batch_payment_initiation_identification" : "ourbatchpayment123",
                "creation_date_time" : "2025-05-07T11:23:12.000Z",
                "number_of_transactions" : "1",
                "control_sum" : "200000",
                "initiating_party" : {
                  "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                  "identification" : {
                    "any_bic" : "SDOMINBIXXX"
                  }
                },
                "payment_information" : [ {
                  "payment_information_identification" : "paymentgroupref1",
                  "payment_method" : "TRF",
                  "instruction_priority" : "HIGH",
                  "service_level" : "URGP",
                  "local_instrument" : "RTGS",
                  "category_purpose" : "SUPP",
                  "requested_execution_date" : "2025-05-08",
                  "debtor" : {
                    "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD"
                  },
                  "debtor_account" : {
                    "identification" : "1234567890",
                    "currency" : "INR"
                  },
                  "debtor_agent" : {
                    "bicfi" : "ICICINBBXXX",
                    "country" : "IN"
                  },
                  "credit_transfer_transaction_information" : [ {
                    "instruction_identification" : "R41.2020",
                    "end_to_end_identification" : "/XUTR/1234567890123456",
                    "uetr" : "f47ac10b-58cc-4372-a567-0e02b2c3d479",
                    "instructed_amount" : {
                      "currency" : "INR",
                      "amount" : "200000"
                    },
                    "creditor_agent" : {
                      "bicfi" : "BARBINBBXXX",
                      "country" : "IN"
                    },
                    "creditor" : {
                      "name" : "MUKTA COMPUTER SERVICES LTD",
                      "address_line" : [ "Unit No.1403, 14th Floor, The Capital,", "Plot No. C-70, G Block,", "Mumbai", "Maharashtra 400051" ]
                    },
                    "creditor_account" : {
                      "identification" : "98765432109876543210",
                      "currency" : "INR"
                    },
                    "remittance_information" : {
                      "unstructured" : "Invoice 31415. Thanks for the great service."
                    },
                    "foreign_remittance_data" : {
                      "foreign_remittance_purpose" : [ "SERV" ],
                      "additional_information_for_banks" : [ "Specialist consulting service." ],
                      "invoice_data" : [ {
                        "goods_and_services_data" : [ {
                          "description_of_goods_services" : [ "lkjlkjlkj" ]
                        } ],
                        "invoice_number" : "31415",
                        "invoice_date" : "2025-05-02",
                        "invoice_amount" : {
                          "currency" : "INR",
                          "amount" : "200000"
                        },
                        "net_payable_amount" : {
                          "currency" : "INR",
                          "amount" : "200000"
                        }
                      } ],
                      "summary_data" : {
                        "total_remittance_amount" : {
                          "currency" : "INR",
                          "amount" : "200000"
                        },
                        "value_date_of_remittance" : "2025-05-08"
                      }
                    }
                  } ]
                } ]
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Scope\r\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\r\n\r\nUsage\r\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\r\nThe API is used to exchange:\r\n- One or more instances of a credit transfer initiation;\r\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\r\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\r\n\r\nThe API can be used in the following scenarios:\r\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\r\n- The API can also be used by an initiating party that has authority to send the API on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\r\n- The API can be used in domestic and cross-border scenarios.\r\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestrictedJVINA1A2PaymentInitiationData1BatchPaymentReference"
                },
                "example" : {
                  "batch_payment_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
                }
              }
            }
          },
          "400" : {
            "description" : "A 400 Bad Request response status is returned for validation or other business errors.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ErrorMessage"
                },
                "examples" : {
                  "400-SwAP510" : {
                    "$ref" : "#/components/examples/400-SwAP510"
                  },
                  "400-SwAP509" : {
                    "$ref" : "#/components/examples/400-SwAP509"
                  },
                  "400-SwAP504-txt" : {
                    "$ref" : "#/components/examples/400-SwAP504-txt"
                  },
                  "400-SwAP504-bic" : {
                    "$ref" : "#/components/examples/400-SwAP504-bic"
                  },
                  "400-SwAP504-svc" : {
                    "$ref" : "#/components/examples/400-SwAP504-svc"
                  },
                  "400-SwAP522" : {
                    "$ref" : "#/components/examples/400-SwAP522"
                  },
                  "400-SwAP504" : {
                    "$ref" : "#/components/examples/400-SwAP504"
                  },
                  "400-SwAP505" : {
                    "$ref" : "#/components/examples/400-SwAP505"
                  },
                  "400-SwAP501" : {
                    "$ref" : "#/components/examples/400-SwAP501"
                  }
                }
              }
            }
          },
          "401" : {
            "$ref" : "#/components/responses/401-Unauthorized"
          },
          "403" : {
            "$ref" : "#/components/responses/403-Forbidden"
          },
          "404" : {
            "$ref" : "#/components/responses/404-NotFound"
          },
          "429" : {
            "$ref" : "#/components/responses/429-TooManyRequests"
          },
          "503" : {
            "$ref" : "#/components/responses/503-ServiceUnavailable"
          },
          "504" : {
            "$ref" : "#/components/responses/504-GatewayTimeout"
          }
        }
      }
    },
    "/a1a2-payment-status-report" : {
      "post" : {
        "tags" : [ "jVIndiaPCM" ],
        "summary" : "Sends a (batch) payment status report to the Customer.",
        "description" : "Sends a (batch) payment status report to the Customer. This report corresponds to a previous A1A2 (batch) payment initiation for foreign remittance.",
        "operationId" : "createRestrictedJVINAACustomerPaymentStatusReportData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/X-Request-ID"
        }, {
          "$ref" : "#/components/parameters/X-BIC"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PostRestrictedJVINA1A2CustomerPaymentStatusReportData1"
              },
              "example" : {
                "original_batch_reference" : "e58ed763-928c-4155-bee9-fdbaaadc15f3",
                "customer_payment_status_report_identification" : "Report001",
                "creation_date_time" : "1000-01-01T00:00:00.000Z",
                "initiating_party_name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                "initiating_party_bic" : "SDOMINBIXXX",
                "original_batch_payment_initiation_identification" : "ourbatchpayment123",
                "original_creation_date_time" : "2025-05-07T11:23:12.000Z",
                "original_number_of_transactions" : "1",
                "original_control_sum" : "200000",
                "original_payment_information_and_status" : [ {
                  "original_payment_information_identification" : "paymentgroupref1",
                  "transaction_information_and_status" : [ {
                    "status_identification" : "status001",
                    "original_instruction_identification" : "R41.2020",
                    "original_end_to_end_identification" : "/XUTR/1234567890123456",
                    "original_uetr" : "f47ac10b-58cc-4372-a567-0e02b2c3d479",
                    "transaction_status" : "ACCP",
                    "status_reason_information_code" : [ "DS07" ],
                    "clearing_system_reference" : "UTR001",
                    "original_transaction_reference" : {
                      "amount" : {
                        "instructed_amount" : {
                          "amount" : "200000",
                          "currency" : "INR"
                        }
                      },
                      "requested_execution_date" : {
                        "date" : "2025-05-08"
                      },
                      "instruction_priority" : "HIGH",
                      "clearing_channel" : "RTGS",
                      "service_level" : "URGP",
                      "local_instrument" : "RTGS",
                      "sequence_type" : "FRST",
                      "category_purpose" : "SUPP",
                      "remittance_information" : {
                        "unstructured" : "Invoice 31415. Thanks for the great service."
                      },
                      "debtor" : {
                        "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD"
                      },
                      "debtor_agent" : {
                        "bicfi" : "ICICINBBXXX"
                      },
                      "debtor_account" : "1234567890",
                      "creditor" : {
                        "party" : {
                          "name" : "MUKTA COMPUTER SERVICES LTD"
                        }
                      },
                      "creditor_agent" : {
                        "bicfi" : "BARBINBBXXX"
                      },
                      "creditor_account" : {
                        "identification" : "98765432109876543210"
                      }
                    }
                  } ]
                } ]
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Scope\r\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\r\n\r\nUsage\r\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\r\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\r\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\r\nThe API can be used in domestic and cross-border scenarios.\r\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestrictedJVINA1A2CustomerPaymentStatusReportData1ReportReference"
                },
                "example" : {
                  "report_reference" : "f47ac10b-58cc-4372-a567-0e02b2c3d479"
                }
              }
            }
          },
          "400" : {
            "description" : "A 400 Bad Request response status is returned for validation or other business errors.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ErrorMessage"
                },
                "examples" : {
                  "400-SwAP510" : {
                    "$ref" : "#/components/examples/400-SwAP510"
                  },
                  "400-SwAP509" : {
                    "$ref" : "#/components/examples/400-SwAP509"
                  },
                  "400-SwAP504-txt" : {
                    "$ref" : "#/components/examples/400-SwAP504-txt"
                  },
                  "400-SwAP504-bic" : {
                    "$ref" : "#/components/examples/400-SwAP504-bic"
                  },
                  "400-SwAP504-svc" : {
                    "$ref" : "#/components/examples/400-SwAP504-svc"
                  },
                  "400-SwAP522" : {
                    "$ref" : "#/components/examples/400-SwAP522"
                  },
                  "400-SwAP504" : {
                    "$ref" : "#/components/examples/400-SwAP504"
                  },
                  "400-SwAP505" : {
                    "$ref" : "#/components/examples/400-SwAP505"
                  },
                  "400-SwAP501" : {
                    "$ref" : "#/components/examples/400-SwAP501"
                  }
                }
              }
            }
          },
          "401" : {
            "$ref" : "#/components/responses/401-Unauthorized"
          },
          "403" : {
            "$ref" : "#/components/responses/403-Forbidden"
          },
          "404" : {
            "$ref" : "#/components/responses/404-NotFound"
          },
          "429" : {
            "$ref" : "#/components/responses/429-TooManyRequests"
          },
          "503" : {
            "$ref" : "#/components/responses/503-ServiceUnavailable"
          },
          "504" : {
            "$ref" : "#/components/responses/504-GatewayTimeout"
          }
        }
      }
    },
    "/a1a2-payment-status-report/{report_reference}" : {
      "get" : {
        "tags" : [ "jVIndiaPCM" ],
        "summary" : "Retrieves a (batch) payment status report previously sent to the Customer.",
        "description" : "Retrieves a (batch) payment status report previously sent to the Customer. This report corresponds to a previous A1A2 (batch) payment initiation for foreign remittance.",
        "operationId" : "fetchRestrictedJVINAACustomerPaymentStatusReportData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/X-Request-ID"
        }, {
          "$ref" : "#/components/parameters/X-BIC"
        }, {
          "name" : "report_reference",
          "in" : "path",
          "description" : "Unique technical identification of the customer payment status report as defined by the customer's server. \r\n\r\nNote: The customerdoes not use this field when first submitting the customer payment status report. but it should be used when subsequently retrieving the customer payment status report.",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "pattern" : "[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}",
            "type" : "string",
            "description" : "Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "example" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
        } ],
        "responses" : {
          "200" : {
            "description" : "Scope\r\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\r\n\r\nUsage\r\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\r\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\r\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\r\nThe API can be used in domestic and cross-border scenarios.\r\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestrictedJVINA1A2CustomerPaymentStatusReportData1"
                },
                "example" : {
                  "report_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e",
                  "original_batch_reference" : "e58ed763-928c-4155-bee9-fdbaaadc15f3",
                  "customer_payment_status_report_identification" : "Report001",
                  "creation_date_time" : "1000-01-01T00:00:00.000Z",
                  "initiating_party_name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD",
                  "initiating_party_bic" : "SDOMINBIXXX",
                  "original_batch_payment_initiation_identification" : "ourbatchpayment123",
                  "original_creation_date_time" : "2025-05-07T11:23:12.000Z",
                  "original_number_of_transactions" : "1",
                  "original_control_sum" : "200000",
                  "original_payment_information_and_status" : [ {
                    "original_payment_information_identification" : "paymentgroupref1",
                    "transaction_information_and_status" : [ {
                      "status_identification" : "status001",
                      "original_instruction_identification" : "R41.2020",
                      "original_end_to_end_identification" : "/XUTR/1234567890123456",
                      "original_uetr" : "f47ac10b-58cc-4372-a567-0e02b2c3d479",
                      "transaction_status" : "ACCP",
                      "status_reason_information_code" : [ "DS07" ],
                      "clearing_system_reference" : "UTR001",
                      "original_transaction_reference" : {
                        "amount" : {
                          "instructed_amount" : {
                            "amount" : "200000",
                            "currency" : "INR"
                          }
                        },
                        "requested_execution_date" : {
                          "date" : "2025-05-08"
                        },
                        "instruction_priority" : "HIGH",
                        "clearing_channel" : "RTGS",
                        "service_level" : "URGP",
                        "local_instrument" : "RTGS",
                        "sequence_type" : "FRST",
                        "category_purpose" : "SUPP",
                        "remittance_information" : {
                          "unstructured" : "Invoice 31415. Thanks for the great service."
                        },
                        "debtor" : {
                          "name" : "SWIFT INDIA DOMESTIC SERVICES PR. LTD"
                        },
                        "debtor_agent" : {
                          "bicfi" : "ICICINBBXXX"
                        },
                        "debtor_account" : "1234567890",
                        "creditor" : {
                          "party" : {
                            "name" : "MUKTA COMPUTER SERVICES LTD"
                          }
                        },
                        "creditor_agent" : {
                          "bicfi" : "BARBINBBXXX"
                        },
                        "creditor_account" : {
                          "identification" : "98765432109876543210"
                        }
                      }
                    } ]
                  } ]
                }
              }
            }
          },
          "400" : {
            "description" : "A 400 Bad Request response status is returned for validation or other business errors.",
            "headers" : {
              "Swift-Request-ID" : {
                "$ref" : "#/components/headers/Swift-Request-ID"
              },
              "X-Request-ID" : {
                "$ref" : "#/components/headers/X-Request-ID"
              }
            },
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ErrorMessage"
                },
                "examples" : {
                  "400-SwAP510" : {
                    "$ref" : "#/components/examples/400-SwAP510"
                  },
                  "400-SwAP509" : {
                    "$ref" : "#/components/examples/400-SwAP509"
                  },
                  "400-SwAP504-txt" : {
                    "$ref" : "#/components/examples/400-SwAP504-txt"
                  },
                  "400-SwAP504-bic" : {
                    "$ref" : "#/components/examples/400-SwAP504-bic"
                  },
                  "400-SwAP504-svc" : {
                    "$ref" : "#/components/examples/400-SwAP504-svc"
                  },
                  "400-SwAP522" : {
                    "$ref" : "#/components/examples/400-SwAP522"
                  },
                  "400-SwAP504" : {
                    "$ref" : "#/components/examples/400-SwAP504"
                  },
                  "400-SwAP505" : {
                    "$ref" : "#/components/examples/400-SwAP505"
                  },
                  "400-SwAP501" : {
                    "$ref" : "#/components/examples/400-SwAP501"
                  }
                }
              }
            }
          },
          "401" : {
            "$ref" : "#/components/responses/401-Unauthorized"
          },
          "403" : {
            "$ref" : "#/components/responses/403-Forbidden"
          },
          "404" : {
            "$ref" : "#/components/responses/404-NotFound"
          },
          "429" : {
            "$ref" : "#/components/responses/429-TooManyRequests"
          },
          "503" : {
            "$ref" : "#/components/responses/503-ServiceUnavailable"
          },
          "504" : {
            "$ref" : "#/components/responses/504-GatewayTimeout"
          }
        }
      }
    }
  },
  "components" : {
    "parameters" : {
      "X-Request-ID" : {
        "name" : "X-Request-ID",
        "in" : "header",
        "description" : "End to end tracking ID. This value will be returned to the caller as a response header of the same name. If no header is assigned by the caller, then one will be assigned by Swift.",
        "required" : false,
        "schema" : {
          "maxLength" : 270,
          "type" : "string"
        },
        "example" : "rrt-1130311210763048898-c-geu2-21394-2055157-17"
      },
      "X-BIC" : {
        "name" : "X-BIC",
        "in" : "header",
        "description" : "The BIC code of the downstream provider which should recieve and process this request, in situations where there are multiple downstream providers. If Swift API Platform should recieve and process this request, the value of this header should be set to SWHQBEBB.",
        "required" : true,
        "schema" : {
          "maxLength" : 255,
          "pattern" : "^[a-zA-Z]{6,6}[a-zA-Z2-9][a-nA-Np-zP-Z0-9]$",
          "type" : "string"
        },
        "example" : "DEUTDEFZ"
      }
    },
    "schemas" : {
      "ErrorMessage" : {
        "required" : [ "code", "severity", "text" ],
        "type" : "object",
        "properties" : {
          "severity" : {
            "type" : "string",
            "description" : "The category of error.\n  * Fatal means the failure is permanent and the request should not be retried.\n  * Transient means the failure is temporary and the request can be retried after a suitable interval.\n  * Logic is a legacy code and should not be used. \n",
            "enum" : [ "Fatal", "Transient", "Logic" ]
          },
          "code" : {
            "maxLength" : 50,
            "type" : "string",
            "description" : "A unique string which should identify the error and the system or service where it originated."
          },
          "text" : {
            "maxLength" : 1000,
            "type" : "string",
            "description" : "free-text field which should describe the problem and any recovery or remediation steps which can be taken."
          },
          "user_message" : {
            "maxLength" : 100,
            "type" : "string",
            "description" : "A message to display to an active user if there is one."
          },
          "more_info" : {
            "type" : "string",
            "description" : "A URL pointing to a resource which contains further information about the error, if one exists.",
            "format" : "uri"
          }
        },
        "additionalProperties" : false
      },
      "RestrictedJVINPaymentInitiationData1BatchPaymentReference" : {
        "required" : [ "batch_payment_reference" ],
        "type" : "object",
        "properties" : {
          "batch_payment_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Unique technical identification of the batch payment initiation as defined by the bank's server. \n\nNote: The corporate does not use this field when first submitting the batch payment initiation. but it should be used when subsequently retrieving the batch payment initiation.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nRestrictedJVINPaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\n\nUsage\nRestrictedJVINPaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\nThe API is used to exchange:\n- One or more instances of a credit transfer initiation;\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\n\nThe API can be used in the following scenarios:\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\n- The API can also be used by an initiating party that has authority to send the message on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\n- The API can be used in domestic and cross-border scenarios.\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.\n\nRule: ChargeBearerPayOrTranLevel\nFor each Customer Credit Transfer Initiation, the following elements are mutually exclusive: Charge Bearer at Payment Information level and Charge Bearer at Transaction level and all may be absent\n\nRule: INTranSrvclv-optionalCHQ_L1\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\n\nRule: INTranSrvclvloptionalCHQ_L2\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\n\nRule: INTranLclInstrm-mandatoryCHQ_L1\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present\n\nRule: INTranLclInstrm-mandatoryCHQ_L2\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present\n",
        "example" : {
          "batch_payment_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
        },
        "x-MXComponent" : "RestrictedJVINPaymentInitiationData1BatchPaymentReference"
      },
      "PostRestrictedJVINPaymentInitiationData1" : {
        "required" : [ "batch_payment_initiation_identification", "creation_date_time", "initiating_party", "number_of_transactions", "payment_information" ],
        "type" : "object",
        "properties" : {
          "batch_payment_initiation_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the instructing party, sent to the next party in the chain to unambiguously identify the batch payment initiation.\nUsage: The instructing party has to make sure that BatchPaymentInitiationIdentification is unique per instructed party for a pre-agreed period.\n\nECS/NECS: 11.4 User Credit Reference\n14-character user defined reference number for the entire transaction.\n\nNACH: 12.16 User Reference\nMandatory, 18 character user defined reference number for the entire transaction (Alpha Numeric)\n\nNEFT: N06.2020 Transaction Reference Number\nUniquely identifies the message.\nMandatory, 16x\n\nNG-RTGS: 22-character number recommended:\nXXXX- Sender IFSC [4]\nYYYYMMDD - Creation Date Reverse [8]\nX – Channel [1]\nnnnnnnnnn- Sequence Number [9]\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the API was created.\n\nNEFT: N06.3535 Batch Time\nIf specified it must be either 1030 or 1200 or 1600.\nOptional, 4!n\n\nNG-RTGS: ISODateTime. Time up to seconds only.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "authorisation" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "User identification or any user key to be used to check whether the initiating party is allowed to initiate transactions from the account specified in the API.\n\nUsage: The content is not of a technical nature, but reflects the organisational structure at the initiating side.\nThe authorisation element can typically be used in relay scenarios, payment initiations, payment returns or payment reversals that are initiated on behalf of a party different from the initiating party.\n",
            "items" : {
              "$ref" : "#/components/schemas/Authorisation1Choice"
            }
          },
          "control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the message, irrespective of currencies.\n\nSame as per clearing requirements.\nNEFT: N06.4063 Sum of Amounts\nMandatory, 19d\n\nNACH: 12.19 Total items in File\nMandatory, 9 numeric\n\nCGI-MP_ControlSumRule\nIt is a client's option to include. If included, value will be checked. The sum is the hash total of values in Instructed Amount or Equivalent Amount.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "initiating_party" : {
            "$ref" : "#/components/schemas/PartyIdentification307"
          },
          "number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the API.\nNEFT: N06.1106 Total number of loops in the message\nNumber of transactions in message.\nMandatory, 5n\n\nNG-RTGS: Number of individual transactions contained in the message.\nRTGS limited to 1 transaction.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "payment_information" : {
            "type" : "array",
            "description" : "Set of characteristics that applies to the debit side of the payment transactions included in the credit transfer initiation.\n\nRule: INCreditorAccountRulePayMethod: For each Payment Information, at least one occurrence of Creditor Account must be present when at least one occurrence of Credit Transfer [TRF] is present\n\nRule: INCreditorAgentRulePayMethod: For each Payment Information, at least one occurrence of Creditor Agent must be present when at least one occurrence of Credit Transfer [TRF] is present\n",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINPaymentInstruction1"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nRestrictedJVINPaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\n\nUsage\nRestrictedJVINPaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\nThe API is used to exchange:\n- One or more instances of a credit transfer initiation;\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\n\nThe API can be used in the following scenarios:\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\n- The API can also be used by an initiating party that has authority to send the message on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\n- The API can be used in domestic and cross-border scenarios.\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.\n\nRule: ChargeBearerPayOrTranLevel\nFor each Customer Credit Transfer Initiation, the following elements are mutually exclusive: Charge Bearer at Payment Information level and Charge Bearer at Transaction level and all may be absent\n\nRule: INTranSrvclv-optionalCHQ_L1\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\n\nRule: INTranSrvclvloptionalCHQ_L2\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\n\nRule: INTranLclInstrm-mandatoryCHQ_L1\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present\n\nRule: INTranLclInstrm-mandatoryCHQ_L2\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present\n",
        "x-MXComponent" : "PostRestrictedJVINPaymentInitiationData1"
      },
      "RestrictedJVINCustomerPaymentStatusReportData1ReportReference" : {
        "required" : [ "report_reference" ],
        "type" : "object",
        "properties" : {
          "report_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Unique technical identification of the customer payment status report as defined by the customer's server. \n\nNote: The customerdoes not use this field when first submitting the customer payment status report. but it should be used when subsequently retrieving the customer payment status report.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\n\nUsage\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\nThe API can be used in domestic and cross-border scenarios.\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).\n",
        "example" : {
          "report_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
        },
        "x-MXComponent" : "RestrictedJVINCustomerPaymentStatusReportData1ReportReference"
      },
      "PostRestrictedJVINCustomerPaymentStatusReportData1" : {
        "required" : [ "creation_date_time", "customer_payment_status_report_identification", "original_batch_payment_initiation_identification", "original_batch_payment_reference", "original_creation_date_time" ],
        "type" : "object",
        "properties" : {
          "customer_payment_status_report_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the instructing party, and sent to the next party in the chain to unambiguously identify the Customer Payment Status Report.\nUsage: The instructing party has to make sure that CustomerPaymentStatusReportIdentification is unique per instructed party for a pre-agreed period.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the API was created.\n\nRule: NG-RTGS: ISODateTime Time up to seconds only.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "initiating_party_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and which is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "initiating_party_bic" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Business identification code of the organisation.\n\n\n\nBased on datatype AnyBICDec2014Identifier: Code allocated to a financial or non-financial institution by the ISO 9362 Registration Authority, as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "AnyBICDec2014Identifier"
          },
          "initiating_party_lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identification as an alternate identification for a party.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "initiating_party_other_identification" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "Unique identification of an organisation, as assigned by an institution, using an identification scheme.\n\nRule: INInitiatingPartyIdBICOrOthr\nFor each Organisation Identification, at least one occurrence of Other Identification must be present when BIC is absent\n\n\n",
            "items" : {
              "$ref" : "#/components/schemas/GenericOrganisationIdentification5"
            }
          },
          "original_batch_payment_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Original, unique technical identification of the batch payment initiation as originally defined by the bank's server. \n\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "original_batch_payment_initiation_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the original instructing party, to unambiguously identify the original Batch Payment Initiation.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the original API was created.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "original_number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the original API.\n\nCGI-MP_OriginalNumberOfTransactionsRule\nIf supplied by originator in the initiation API, will be echoed back.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "original_control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the original API, irrespective of currencies.\n\nCGI-MP_OriginalControlSumRule\nIf supplied by originator in the initiation API, will be echoed back.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "group_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the status of a group of transactions.\n\nCGI-MP_GroupStatusRule: Required if reporting on a group level or combined group and transaction levels. Not Used if reporting at a transaction level only.\n\nACTC = Group only\nACCP = Group only and/or Consolidated status\nACSP = Group only and/or Consolidated status\nACWC = Group only and/or Consolidated status\nPART = Group  only and/or Consolidated status\nPDNG = Group  only and/or Consolidated status\nRJCT = Group  only and/or Consolidated status\nACSC = Accepted Settlement Completed\n\nRule: Refer to the ISO 20022 External Code List \"ExternalPaymentGroupStatus1Code\" for the complete list.\n\nSpecifies the status of a group of payment instructions, as published in an external payment group status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentGroupStatus1Code"
          },
          "status_reason_information_code" : {
            "type" : "array",
            "description" : "Provides detailed information on the status reason.\n\nNG-RTGS: Repeats only once\n\nCGI-MP_CodeRule\nCode required from External Code List.  If a bank's status code is supported other than a code from the External Code List, then the bank status code is shown under <AddtlInf>.\n\nRule: Refer to the ISO 20022 External Code List \"ExternalStatusReason1Code\" for the complete list.\n\nSpecifies the status reason, as published in an external status reason code list.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "items" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "ExternalStatusReason1Code"
            }
          },
          "additional_information" : {
            "type" : "array",
            "description" : "Further details on the status reason.\n\nUsage: Additional information can be used for several purposes such as the reporting of repaired information.\n\nBased on datatype Max105Text: Specifies a character string with a maximum length of 105 characters.\n",
            "items" : {
              "maxLength" : 105,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max105Text"
            }
          },
          "number_of_transactions_per_status" : {
            "type" : "array",
            "description" : "Detailed information on the number of transactions for each identical transaction status.",
            "items" : {
              "$ref" : "#/components/schemas/NumberOfTransactionsPerStatus5"
            }
          },
          "original_payment_information_and_status" : {
            "type" : "array",
            "description" : "Information concerning the original payment information, to which the status report API refers.",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINOriginalPaymentInstruction27"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\n\nUsage\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\nThe API can be used in domestic and cross-border scenarios.\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).\n",
        "x-MXComponent" : "PostRestrictedJVINCustomerPaymentStatusReportData1"
      },
      "RestrictedJVINA1A2PaymentInitiationData1BatchPaymentReference" : {
        "required" : [ "batch_payment_reference" ],
        "type" : "object",
        "properties" : {
          "batch_payment_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Unique technical identification of the batch payment initiation as defined by the bank's server. \n\nNote: The corporate does not use this field when first submitting the batch payment initiation. but it should be used when subsequently retrieving the batch payment initiation.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\n\nUsage\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\nThe API is used to exchange:\n- One or more instances of a credit transfer initiation;\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\n\nThe API can be used in the following scenarios:\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\n- The API can also be used by an initiating party that has authority to send the API on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\n- The API can be used in domestic and cross-border scenarios.\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.\n",
        "example" : {
          "batch_payment_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
        },
        "x-MXComponent" : "RestrictedJVINA1A2PaymentInitiationData1BatchPaymentReference"
      },
      "PostRestrictedJVINA1A2PaymentInitiationData1" : {
        "required" : [ "batch_payment_initiation_identification", "creation_date_time", "initiating_party", "number_of_transactions", "payment_information" ],
        "type" : "object",
        "properties" : {
          "batch_payment_initiation_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the instructing party, and sent to the next party in the chain to unambiguously identify the batch payment initiation.\nUsage: The instructing party has to make sure that BatchPaymentInitiationIdentification is unique per instructed party for a pre-agreed period.\n\nECS/NECS: 11.4 User Credit Reference\n14-character user defined reference number for the entire transaction.\n\nNACH: 12.16 User Reference\nMandatory, 18 character user defined reference number for the entire transaction (Alpha Numeric)\n\nNEFT: N06.2020 Transaction Reference Number\nUniquely identifies the message.\nMandatory, 16x\n\nNG-RTGS: 22-character number recommended:\nXXXX- Sender IFSC [4]\nYYYYMMDD - Creation Date Reverse [8]\nX – Channel [1]\nnnnnnnnnn- Sequence Number [9]\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the API was created.\n\nNEFT: N06.3535 Batch Time\nIf specified it must be either 1030 or 1200 or 1600.\nOptional, 4!n\n\nNG-RTGS: ISODateTime. Time up to seconds only.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "authorisation" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "User identification or any user key to be used to check whether the initiating party is allowed to initiate transactions from the account specified in the API.\n\nUsage: The content is not of a technical nature, but reflects the organisational structure at the initiating side.\nThe authorisation element can typically be used in relay scenarios, payment initiations, payment returns or payment reversals that are initiated on behalf of a party different from the initiating party.\n",
            "items" : {
              "$ref" : "#/components/schemas/Authorisation1Choice"
            }
          },
          "number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the API.\n\nNEFT: N06.1106 Total number of loops in the message\nNumber of transactions in message.\nMandatory, 5n\n\nNG-RTGS: Number of individual transactions contained in the message.\nRTGS limited to 1 transaction.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the message, irrespective of currencies.\n\nSame as per clearing requirements.\nNEFT: N06.4063 Sum of Amounts\nMandatory, 19d\n\nNACH: 12.19 Total items in File\nMandatory, 9 numeric\n \nCGI-MP_ControlSumRule: It is a client's option to include. If included, value will be checked. The sum is the hash total of values in Instructed Amount or Equivalent Amount.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "initiating_party" : {
            "$ref" : "#/components/schemas/PartyIdentification307"
          },
          "payment_information" : {
            "type" : "array",
            "description" : "Set of characteristics that applies to the debit side of the payment transactions included in the credit transfer initiation.\n\nRule: INCreditorAccountRulePayMethod: For each Payment Information, at least one occurrence of Creditor Account must be present when at least one occurrence of Credit Transfer [TRF] is present\n\nRule: INCreditorAgentRulePayMethod: For each Payment Information, at least one occurrence of Creditor Agent must be present when at least one occurrence of Credit Transfer [TRF] is present\n",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINA1A2PaymentInstruction1"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\n\nUsage\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\nThe API is used to exchange:\n- One or more instances of a credit transfer initiation;\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\n\nThe API can be used in the following scenarios:\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\n- The API can also be used by an initiating party that has authority to send the API on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\n- The API can be used in domestic and cross-border scenarios.\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.\n",
        "x-MXComponent" : "PostRestrictedJVINA1A2PaymentInitiationData1"
      },
      "RestrictedJVINA1A2CustomerPaymentStatusReportData1ReportReference" : {
        "required" : [ "report_reference" ],
        "type" : "object",
        "properties" : {
          "report_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Unique technical identification of the customer payment status report as defined by the customer's server. \n\nNote: The customerdoes not use this field when first submitting the customer payment status report. but it should be used when subsequently retrieving the customer payment status report.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\n\nUsage\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\nThe API can be used in domestic and cross-border scenarios.\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).\n",
        "example" : {
          "report_reference" : "91823d1b-3266-4a20-a3fd-bde174b9188e"
        },
        "x-MXComponent" : "RestrictedJVINA1A2CustomerPaymentStatusReportData1ReportReference"
      },
      "PostRestrictedJVINA1A2CustomerPaymentStatusReportData1" : {
        "required" : [ "creation_date_time", "customer_payment_status_report_identification", "original_batch_payment_initiation_identification", "original_batch_reference", "original_creation_date_time" ],
        "type" : "object",
        "properties" : {
          "customer_payment_status_report_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the instructing party, and sent to the next party in the chain to unambiguously identify the Customer Payment Status Report.\nUsage: The instructing party has to make sure that CustomerPaymentStatusReportIdentification is unique per instructed party for a pre-agreed period.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the API was created.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "initiating_party_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and which is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "initiating_party_bic" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Business identification code of the organisation.\n\n\n\nBased on datatype AnyBICDec2014Identifier: Code allocated to a financial or non-financial institution by the ISO 9362 Registration Authority, as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "AnyBICDec2014Identifier"
          },
          "initiating_party_lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identification as an alternate identification for a party.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "initiating_party_other_identification" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "Unique identification of an organisation, as assigned by an institution, using an identification scheme.\n\n\n",
            "items" : {
              "$ref" : "#/components/schemas/GenericOrganisationIdentification5"
            }
          },
          "original_batch_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Original, unique technical identification of the batch payment initiation as originally defined by the bank's server. \n\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "original_batch_payment_initiation_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the original instructing party, to unambiguously identify the original Batch Payment Initiation.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the original API was created.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "original_number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the original API.\n\nCGI-MP_OriginalNumberOfTransactionsRule\nIf supplied by originator in the initiation API, will be echoed back.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "original_control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the original API, irrespective of currencies.\n\nCGI-MP_OriginalControlSumRule: If supplied by originator in the initiation API, will be echoed back.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "group_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the status of a group of transactions.\n\nCGI-MP_GroupStatusRule: Required if reporting on a group level or combined group and transaction levels. Not Used if reporting at a transaction level only.\n\nACTC = Group only\nACCP = Group only and/or Consolidated status\nACSP = Group only and/or Consolidated status\nACWC = Group only and/or Consolidated status\nPART = Group  only and/or Consolidated status\nPDNG = Group  only and/or Consolidated status\nRJCT = Group  only and/or Consolidated status\nACSC = Accepted Settlement Completed\nRCVD = Received\n\nRule: Refer to the ISO 20022 External Code List \"ExternalPaymentGroupStatus1Code\" for the complete list.\n\nSpecifies the status of a group of payment instructions, as published in an external payment group status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentGroupStatus1Code"
          },
          "status_reason_information_code" : {
            "type" : "array",
            "description" : "Provides detailed information on the status reason.\n\nNG-RTGS: Repeats only once\n\nCGI-MP_CodeRule\nCode required from External Code List.  If a bank's status code is supported other than a code from the External Code List, then the bank status code is shown under <AddtlInf>.\n\nRule: Refer to the ISO 20022 External Code List \"ExternalStatusReason1Code\" for the complete list.\n\nSpecifies the status reason, as published in an external status reason code list.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "items" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "ExternalStatusReason1Code"
            }
          },
          "additional_information" : {
            "type" : "array",
            "description" : "Further details on the status reason.\n\nUsage: Additional information can be used for several purposes such as the reporting of repaired information.\n\nBased on datatype Max105Text: Specifies a character string with a maximum length of 105 characters.\n",
            "items" : {
              "maxLength" : 105,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max105Text"
            }
          },
          "number_of_transactions_per_status" : {
            "type" : "array",
            "description" : "Detailed information on the number of transactions for each identical transaction status.",
            "items" : {
              "$ref" : "#/components/schemas/NumberOfTransactionsPerStatus5"
            }
          },
          "original_payment_information_and_status" : {
            "type" : "array",
            "description" : "Information concerning the original payment information, to which the status report API refers.",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINA1A2OriginalPaymentInstruction27"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\n\nUsage\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\nThe API can be used in domestic and cross-border scenarios.\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).\n",
        "x-MXComponent" : "PostRestrictedJVINA1A2CustomerPaymentStatusReportData1"
      },
      "AccountIdentification4Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the unique identification of an account as assigned by the account servicer.",
        "x-MXComponent" : "AccountIdentification4Choice",
        "oneOf" : [ {
          "required" : [ "iban" ],
          "type" : "object",
          "properties" : {
            "iban" : {
              "pattern" : "^[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}$",
              "type" : "string",
              "description" : "International Bank Account Number (IBAN) - identifier used internationally by financial institutions to uniquely identify the account of a customer. Further specifications of the format and content of the IBAN can be found in the standard ISO 13616 \"Banking and related financial services - International Bank Account Number (IBAN)\" version 1997-10-01, or later revisions.\n\nBased on datatype IBAN2007Identifier: The International Bank Account Number is a code used internationally by financial institutions to uniquely identify the account of a customer at a financial institution as described in the 2007 edition of the ISO 13616 standard \"Banking and related financial services - International Bank Account Number (IBAN)\" and replaced by the more recent edition of the standard.\n",
              "x-MXComponent" : "IBAN2007Identifier"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "other" ],
          "type" : "object",
          "properties" : {
            "other" : {
              "$ref" : "#/components/schemas/GenericAccountIdentification1"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "AccountSchemeName1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Sets of elements to identify a name of the identification scheme.",
        "x-MXComponent" : "AccountSchemeName1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a coded form as published in an external list.\n\nSpecifies the external account identification scheme name code in the format of character string with a maximum length of 4 characters.\nThe list of valid codes is an external code list published separately.\nExternal code sets can be downloaded from www.iso20022.org.\n",
              "x-MXComponent" : "ExternalAccountIdentification1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a free text form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "AddressType3Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Choice of formats for the type of address.",
        "x-MXComponent" : "AddressType3Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "type" : "string",
              "description" : "Type of address expressed as a code.\n\nSpecifies the type of address.\n\nCode Name Definition:\n*`ADDR` - Postal - Address is the complete postal address.\n*`BIZZ` - Business - Address is the business address.\n*`DLVY` - DeliveryTo - Address is the address to which delivery is to take place.\n*`HOME` - Residential - Address is the home address.\n*`MLTO` - MailTo - Address is the address to which mail is sent.\n*`PBOX` - POBox - Address is a postal office (PO) box.\n",
              "x-MXComponent" : "AddressType2Code",
              "enum" : [ "ADDR", "BIZZ", "DLVY", "HOME", "MLTO", "PBOX" ]
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "$ref" : "#/components/schemas/GenericIdentification30"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "AdvanceImportGuaranteeData1" : {
        "type" : "object",
        "properties" : {
          "guarantee_number" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "SBLC or BG Number\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "guarantee_issue_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "SBLC or BG Issue Date\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "guarantee_amount" : {
            "$ref" : "#/components/schemas/AdvanceImportGuaranteeData1_guarantee_amount"
          }
        },
        "additionalProperties" : false,
        "description" : "Details of Advance Import of Goods. \n\nFields related to Advance Imports may/may not be populated depending on the scenarios listed by the Reserve Bank of India (RBI). For more details refer 'Master Direction – Import of Goods and Services' document published on RBI's website https://www.rbi.org.in/\n",
        "x-MXComponent" : "AdvanceImportGuaranteeData1"
      },
      "AmountData1" : {
        "type" : "object",
        "properties" : {
          "amount" : {
            "$ref" : "#/components/schemas/AmountData1_amount"
          },
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "description" : "Currency.\n\nA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 \"Codes for the representation of currencies and funds\".\n",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          }
        },
        "additionalProperties" : false,
        "description" : "Indicates credit or debit amount and currency.",
        "x-MXComponent" : "AmountData1"
      },
      "AmountData4" : {
        "type" : "object",
        "properties" : {
          "debit_amount_details" : {
            "$ref" : "#/components/schemas/AmountData1"
          },
          "credit_amount_details" : {
            "$ref" : "#/components/schemas/AmountData1"
          }
        },
        "additionalProperties" : false,
        "description" : "Consists of Debit and Credit Amount Details.",
        "x-MXComponent" : "AmountData4"
      },
      "AmountType4Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.",
        "x-MXComponent" : "AmountType4Choice",
        "oneOf" : [ {
          "required" : [ "instructed_amount" ],
          "type" : "object",
          "properties" : {
            "instructed_amount" : {
              "$ref" : "#/components/schemas/AmountType4Choice_instructed_amount"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "equivalent_amount" ],
          "type" : "object",
          "properties" : {
            "equivalent_amount" : {
              "$ref" : "#/components/schemas/EquivalentAmount2"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "Authorisation1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Provides the details on the user identification or any user key that allows to check if the initiating party is allowed to issue the transaction.",
        "x-MXComponent" : "Authorisation1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "type" : "string",
              "description" : "Specifies the authorisation, in a coded form.\n\nSpecifies the level of approval depending on a number of factors, including payment type, threshold amount or local country or operations practice.\n\nCode Name Definition:\n*`AUTH` - PreAuthorisedFile - Indicates a file has been pre authorised or approved within the originating customer environment and no further approval is required.\n*`FDET` - FileLevelAuthorisationDetails - Indicates that a file requires additional file level approval, with the ability to view both the payment information block and supporting customer credit transaction detail.\n*`FSUM` - FileLevelAuthorisationSummary - Indicates that a file requires additional file level approval, with the ability to view only the payment information block level information.\n*`ILEV` - InstructionLevelAuthorisation - Indicates that a file requires all customer transactions to be authorised or approved.\n",
              "x-MXComponent" : "Authorisation1Code",
              "enum" : [ "AUTH", "FDET", "FSUM", "ILEV" ]
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 128,
              "minLength" : 1,
              "type" : "string",
              "description" : "Specifies the authorisation, in a free text form.\n\nBased on datatype Max128Text: Specifies a character string with a maximum length of 128 characters.\n",
              "x-MXComponent" : "Max128Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "BillOfEntryAndShipmentData1" : {
        "type" : "object",
        "properties" : {
          "bill_of_entry_number" : {
            "maxLength" : 34,
            "minLength" : 1,
            "type" : "string",
            "description" : "Bill Of Entry Number.\n\nBased on datatype Max34Text: Specifies a character string with a maximum length of 34 characters.\n",
            "x-MXComponent" : "Max34Text"
          },
          "bill_of_entry_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Bill Of Entry Date.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "boe_utilisation_amount" : {
            "$ref" : "#/components/schemas/BillOfEntryAndShipmentData1_boe_utilisation_amount"
          },
          "invoice_number" : {
            "type" : "array",
            "description" : "Multiple invoices can exist under a single BOE. Therefore, this is a repetitive field with in BillOfEntry&ShipmentDetails component.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "items" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max35Text"
            }
          },
          "port_code" : {
            "maxLength" : 10,
            "minLength" : 1,
            "type" : "string",
            "description" : "Port Code.\n\nBased on datatype Max10Text: Specifies a character string with a maximum length of 10 characters.\n",
            "x-MXComponent" : "Max10Text"
          },
          "authorised_dealer_code" : {
            "maxLength" : 15,
            "minLength" : 1,
            "type" : "string",
            "description" : "AD Code.\n\nCurrently maximum of 6 Alphanumeric characters are allowed by the RBI. However, the specifications are futuristic in nature and therefore the field supports max 15 characters.\n\nBased on datatype Max15Text: Specifies a character string with a maximum length of 15 characters.\n",
            "x-MXComponent" : "Max15Text"
          },
          "import_export_code" : {
            "pattern" : "^[0-9]{1,10}$",
            "type" : "string",
            "description" : "Import Export Code.\n\nBased on datatype Max10NumericText: Specifies a numeric string with a maximum length of 10 digits.\n",
            "x-MXComponent" : "Max10NumericText"
          },
          "shipment_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "On Board Shipping Date.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "country_of_origin" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Country Of Origin.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "port_of_loading" : {
            "maxLength" : 64,
            "minLength" : 1,
            "type" : "string",
            "description" : "Port Of Loading.\n\nBased on datatype Max64Text: Specifies a character string with a maximum length of 64 characters.\n",
            "x-MXComponent" : "Max64Text"
          },
          "consignee" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "When consignee is other than the remitter.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "shipping_company" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Freight forwarder or shipping company.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "vessel_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Vessel Name.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "imo_code" : {
            "pattern" : "^[0-9]{1,7}$",
            "type" : "string",
            "description" : "International Maritime Organization Code.\n\nBased on datatype Max7NumericText: Specifies a numeric string with a maximum length of 7 digits.\n",
            "x-MXComponent" : "Max7NumericText"
          },
          "payment_terms" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Payment Term as mentioned in Invoice.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "transhipment_port" : {
            "maxLength" : 65,
            "minLength" : 1,
            "type" : "string",
            "description" : "Transhipment Port.\n\nBased on datatype Max65Text: Specifies a character string with a maximum length of 65 characters.\n",
            "x-MXComponent" : "Max65Text"
          }
        },
        "additionalProperties" : false,
        "description" : "When remittance purpose is - Post Shipment Import Of Goods and when Bill of Entry information is available.",
        "x-MXComponent" : "BillOfEntryAndShipmentData1"
      },
      "BranchAndFinancialInstitutionIdentification11" : {
        "required" : [ "country" ],
        "type" : "object",
        "properties" : {
          "bicfi" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362 \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n\nBased on datatype BICFIDec2014Identifier: Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "BICFIDec2014Identifier"
          },
          "clearing_system_identification" : {
            "maxLength" : 5,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a clearing system Clearing System Identification Code\nINFSC = Indian Financial System Code\nMICR = MICR (Magnetic Ink Character Recognition) code\nOr using an external code ExternalClearingSystemIdentification1Code published on ISO 20022.org.\n\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nBased on datatype Max5Text: Specifies a character string with a maximum length of 5 characters.\n",
            "x-MXComponent" : "Max5Text"
          },
          "clearing_system_member_identification" : {
            "maxLength" : 11,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a member of a clearing system.\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nFor IFSC, 11-character code\nFor MICR, 9-digit bank branch code\n\nIdentification of a member of a clearing system.\n\nECS/NECS: 22.2 Destination Sort Code\n9-digit MICR city-bank-branch code.\n\nNEFT: N06.5569 Beneficiary branch’s IFSC (Indian Financial System Code).\nMandatory, 4!a4!c[3!c]\n\nNACH: 23.16 Destination Bank IFSC / MICR / IIN\nMandatory, 11-character Destn Bank IFSC/MICR/IIN.\n\nNG-RTGS: For Participant, IFSC code to be keyed in. For Non- Participant (i.e. Participant who do not have IFSC code), Name and Other Identification to be keyed in.\n\nIFSC Code for financial institution is registered with RBI for NGRTGS, and consist of eleven (11) contiguous characters comprising the first four Components: INSTITUTION CODE, Fifth Character is ‘0’ and remaining 6 are Alphanumeric BRANCH CODE.\n\nBased on datatype Max11Text: Clearing System Member Identification.\n",
            "x-MXComponent" : "Max11Text"
          },
          "lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identifier of the financial institution.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which an agent is known and which is usually used to identify that agent.\n\nBeneficiary Bank Name for Foreign Remittances.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "town_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a built-up area, with defined boundaries, and a local government.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Nation with its own government.\n\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "other" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification of an agent, as assigned by an institution, using an identification scheme.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Unique and unambiguous identification of a financial institution or a branch of a financial institution.",
        "example" : {
          "clearing_system_identification" : "INFSC",
          "clearing_system_member_identification" : "HDFC0999999",
          "town_name" : "Mumbai",
          "country" : "IN"
        },
        "x-MXComponent" : "BranchAndFinancialInstitutionIdentification11"
      },
      "BranchAndFinancialInstitutionIdentification13" : {
        "type" : "object",
        "properties" : {
          "bicfi" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362 \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n\n\n\nBased on datatype BICFIDec2014Identifier: Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "BICFIDec2014Identifier"
          },
          "clearing_system_identification" : {
            "maxLength" : 5,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a clearing system Clearing System Identification Code\nINFSC = Indian Financial System Code\nMICR = MICR (Magnetic Ink Character Recognition) code\nOr using an external code ExternalClearingSystemIdentification1Code published on ISO 20022.org.\n\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nBased on datatype Max5Text: Specifies a character string with a maximum length of 5 characters.\n",
            "x-MXComponent" : "Max5Text"
          },
          "clearing_system_member_identification" : {
            "maxLength" : 11,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a member of a clearing system.\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nFor IFSC, 11-character code\nFor MICR, 9-digit bank branch code\n\nIdentification of a member of a clearing system.\n\nECS/NECS: 22.2 Destination Sort Code\n9-digit MICR city-bank-branch code.\n\nNEFT: N06.5569 Beneficiary branch’s IFSC (Indian Financial System Code).\nMandatory, 4!a4!c[3!c]\n\nNACH: 23.16 Destination Bank IFSC / MICR / IIN\nMandatory, 11-character Destn Bank IFSC/MICR/IIN.\n\nNG-RTGS: For Participant, IFSC code to be keyed in. For Non- Participant (i.e. Participant who do not have IFSC code), Name and Other Identification to be keyed in.\n\nIFSC Code for financial institution is registered with RBI for NGRTGS, and consist of eleven (11) contiguous characters comprising the first four Components: INSTITUTION CODE, Fifth Character is ‘0’ and remaining 6 are Alphanumeric BRANCH CODE.\n\nBased on datatype Max11Text: Clearing System Member Identification.\n",
            "x-MXComponent" : "Max11Text"
          },
          "lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identifier of the financial institution.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which an agent is known and which is usually used to identify that agent.\n\nUSAGE RULE: ONLY USED FOR INTERMEDIARY AGENTS\n\nCorrespondent Bank Name (IntermediaryAgent1 or 2) for Foreign Remittances\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "other_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification of an agent, as assigned by an institution, using an identification scheme.\n\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Unique and unambiguous identification of a financial institution or a branch of a financial institution.",
        "x-MXComponent" : "BranchAndFinancialInstitutionIdentification13"
      },
      "BranchAndFinancialInstitutionIdentification15" : {
        "type" : "object",
        "properties" : {
          "bicfi" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362 \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n\nBased on datatype BICFIDec2014Identifier: Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "BICFIDec2014Identifier"
          },
          "clearing_system_identification" : {
            "maxLength" : 5,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a clearing system Clearing System Identification Code\nINFSC = Indian Financial System Code\nMICR = MICR (Magnetic Ink Character Recognition) code\nOr using an external code ExternalClearingSystemIdentification1Code published on ISO 20022.org.\n\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nBased on datatype Max5Text: Specifies a character string with a maximum length of 5 characters.\n",
            "x-MXComponent" : "Max5Text"
          },
          "clearing_system_member_identification" : {
            "maxLength" : 11,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a member of a clearing system.\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nFor IFSC, 11-character code\nFor MICR, 9-digit bank branch code\n\nIdentification of a member of a clearing system.\n\nECS/NECS: 22.2 Destination Sort Code\n9-digit MICR city-bank-branch code.\n\nNEFT: N06.5569 Beneficiary branch’s IFSC (Indian Financial System Code).\nMandatory, 4!a4!c[3!c]\n\nNACH: 23.16 Destination Bank IFSC / MICR / IIN\nMandatory, 11-character Destn Bank IFSC/MICR/IIN.\n\nNG-RTGS: For Participant, IFSC code to be keyed in. For Non- Participant (i.e. Participant who do not have IFSC code), Name and Other Identification to be keyed in.\n\nIFSC Code for financial institution is registered with RBI for NGRTGS, and consist of eleven (11) contiguous characters comprising the first four Components: INSTITUTION CODE, Fifth Character is ‘0’ and remaining 6 are Alphanumeric BRANCH CODE.\n\nBased on datatype Max11Text: Clearing System Member Identification.\n",
            "x-MXComponent" : "Max11Text"
          },
          "lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identifier of the financial institution.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which an agent is known and which is usually used to identify that agent.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "sub_department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a sub-division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "street_name" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a street or thoroughfare.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "building_number" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Number that identifies the position of a building on a street.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "building_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the building or house.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "floor" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Floor or storey within a building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_box" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Numbered box in a post office, assigned to a person or organisation, where letters are kept until called for.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "room" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Building room number.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_code" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "town_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a built-up area, with defined boundaries, and a local government.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "town_location_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specific location name within the town.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "district_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision within a country sub-division.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country_sub_division" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision of a country such as state, region, county.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Nation with its own government.\n\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "address_line" : {
            "maxItems" : 7,
            "type" : "array",
            "description" : "Information that locates and identifies a specific address, as defined by postal services, presented in free format text.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "items" : {
              "maxLength" : 70,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max70Text"
            }
          },
          "other" : {
            "$ref" : "#/components/schemas/GenericFinancialIdentification1"
          },
          "branch_identification" : {
            "$ref" : "#/components/schemas/BranchData3"
          }
        },
        "additionalProperties" : false,
        "description" : "Unique and unambiguous identification of a financial institution or a branch of a financial institution.",
        "x-MXComponent" : "BranchAndFinancialInstitutionIdentification15"
      },
      "BranchAndFinancialInstitutionIdentification16" : {
        "required" : [ "country" ],
        "type" : "object",
        "properties" : {
          "bicfi" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362 \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n\nBased on datatype BICFIDec2014Identifier: Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "BICFIDec2014Identifier"
          },
          "clearing_system_identification" : {
            "maxLength" : 5,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a clearing system Clearing System Identification Code\nINFSC = Indian Financial System Code\nMICR = MICR (Magnetic Ink Character Recognition) code\nOr using an external code ExternalClearingSystemIdentification1Code published on ISO 20022.org.\n\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nBased on datatype Max5Text: Specifies a character string with a maximum length of 5 characters.\n",
            "x-MXComponent" : "Max5Text"
          },
          "clearing_system_member_identification" : {
            "maxLength" : 11,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a member of a clearing system.\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nFor IFSC, 11-character code\nFor MICR, 9-digit bank branch code\n\nIdentification of a member of a clearing system.\n\nECS/NECS: 22.2 Destination Sort Code\n9-digit MICR city-bank-branch code.\n\nNEFT: N06.5569 Beneficiary branch’s IFSC (Indian Financial System Code).\nMandatory, 4!a4!c[3!c]\n\nNACH: 23.16 Destination Bank IFSC / MICR / IIN\nMandatory, 11-character Destn Bank IFSC/MICR/IIN.\n\nNG-RTGS: For Participant, IFSC code to be keyed in. For Non- Participant (i.e. Participant who do not have IFSC code), Name and Other Identification to be keyed in.\n\nIFSC Code for financial institution is registered with RBI for NGRTGS, and consist of eleven (11) contiguous characters comprising the first four Components: INSTITUTION CODE, Fifth Character is ‘0’ and remaining 6 are Alphanumeric BRANCH CODE.\n\nBased on datatype Max11Text: Clearing System Member Identification.\n",
            "x-MXComponent" : "Max11Text"
          },
          "lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identifier of the financial institution.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which an agent is known and which is usually used to identify that agent.\n\nBeneficiary Bank Name for Foreign Remittances.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "building_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the building or house.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "floor" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Floor or storey within a building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_box" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Numbered box in a post office, assigned to a person or organisation, where letters are kept until called for.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "room" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Building room number.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "town_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a built-up area, with defined boundaries, and a local government.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "town_location_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specific location name within the town.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "district_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision within a country sub-division.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Nation with its own government.\nFixed value IN for India.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "other" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification of an agent, as assigned by an institution, using an identification scheme.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Unique and unambiguous identification of a financial institution or a branch of a financial institution.",
        "example" : {
          "clearing_system_identification" : "INFSC",
          "clearing_system_member_identification" : "SBIN0005076",
          "country" : "IN"
        },
        "x-MXComponent" : "BranchAndFinancialInstitutionIdentification16"
      },
      "BranchData3" : {
        "type" : "object",
        "properties" : {
          "identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique and unambiguous identification of a branch of a financial institution.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identification for the branch of the financial institution.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which an agent is known and which is usually used to identify that agent.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "postal_address" : {
            "$ref" : "#/components/schemas/PostalAddress24"
          }
        },
        "additionalProperties" : false,
        "description" : "Information that locates and identifies a specific branch of a financial institution.",
        "x-MXComponent" : "BranchData3"
      },
      "CashAccount214" : {
        "required" : [ "identification" ],
        "type" : "object",
        "properties" : {
          "iban" : {
            "pattern" : "^[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}$",
            "type" : "string",
            "description" : "International Bank Account Number (IBAN) - identifier used internationally by financial institutions to uniquely identify the account of a customer. Further specifications of the format and content of the IBAN can be found in the standard ISO 13616 \"Banking and related financial services - International Bank Account Number (IBAN)\" version 1997-10-01, or later revisions.\n\nUSAGE RULE: IBAN used only for cross-border payments\n\nBased on datatype IBAN2007Identifier: The International Bank Account Number is a code used internationally by financial institutions to uniquely identify the account of a customer at a financial institution as described in the 2007 edition of the ISO 13616 standard \"Banking and related financial services - International Bank Account Number (IBAN)\" and replaced by the more recent edition of the standard.\n",
            "x-MXComponent" : "IBAN2007Identifier"
          },
          "identification" : {
            "maxLength" : 34,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique and unambiguous identification for the account between the account owner and the account servicer.\n\nNACH: 23.17 Beneficiary's Bank Account number\nMandatory, 35-character description.\n\nNEFT: N061.6061 Beneficiary Customer Account Number\nMandatory\n35x\n\nNG-RTGS: Creditor's Account number\nMandatory\nMax34Text\n\nECS/NECS: 11.5 Destination Account number\n15-character description.\n\nRequired for Foreign Remittances as well\n\n\nBased on datatype Max34Text: Specifies a character string with a maximum length of 34 characters.\n",
            "x-MXComponent" : "Max34Text"
          },
          "type" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the nature, or use of the account.\n\nNACH: 23.3 Destination Account Type\nOptional, 2-digit code as provided by Bank - Needs to be as per NECS(10/11/12/29/30/31) or blank.\n\nECS/NECS: 11.3 Destination Account Type (S.B. account or Current account)\n2-digit code (10 / 11 / 12 / 29 / 30 / 31).\n\nNEFT: N06.6310 Beneficiary Customer Account Type\nOptional\n\n10 = SAVINGS BANK\n11 = CURRENT ACCOUNT\n12 = Overdraft\n13 = CASH CREDIT\n14 = LOAN ACCOUNT\n40 = NRE (Non-Resident (External) Rupee Account)\n50 = Remittance for Customer not having account in bank\n51 = Indo Nepal Remittance\n52 = Card to Card Payments\n\nNG-RTGS: To be used to accommodate NEFT Account type information. This is also useful to document NRE account type for the RTGS.\n\nOr ExternalCashAccountType1Code as published on www.iso20022.org .\n\nBased on datatype Max4Text: Specifies a character string with a maximum length of 4 characters.\n",
            "x-MXComponent" : "Max4Text"
          },
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "description" : "Identification of the currency in which the account is held. \n\nUsage: Currency should only be used in case one and the same account number covers several currencies\nand the initiating party needs to identify which currency needs to be used for settlement on the account.\n\nUSAGE RULE: NG-RTGS: For NG-RTGS, “INR” is the only currency that can be specified.\nUSAGE RULE: mandatory for creditor account and debtor account for payment instructions; not used for status reporting.\n\nA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 \"Codes for the representation of currencies and funds\".\n",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "name" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the account, as assigned by the account servicing institution, in agreement with the account owner in order to provide an additional means of identification of the account.\n\nUsage: The account name is different from the account owner name. The account name is used in certain user communities to provide a means of identifying the account, in addition to the account owner's identity and the account number.\n\n\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "proxy" : {
            "$ref" : "#/components/schemas/ProxyAccountIdentification1"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides the details to identify an account.",
        "x-MXComponent" : "CashAccount214"
      },
      "CashAccount38" : {
        "required" : [ "identification" ],
        "type" : "object",
        "properties" : {
          "identification" : {
            "$ref" : "#/components/schemas/AccountIdentification4Choice"
          },
          "type" : {
            "$ref" : "#/components/schemas/CashAccountType2Choice"
          },
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "description" : "Identification of the currency in which the account is held. \n\nUsage: Currency should only be used in case one and the same account number covers several currencies\nand the initiating party needs to identify which currency needs to be used for settlement on the account.\n\nA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 \"Codes for the representation of currencies and funds\".\n",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "name" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the account, as assigned by the account servicing institution, in agreement with the account owner in order to provide an additional means of identification of the account.\n\nUsage: The account name is different from the account owner name. The account name is used in certain user communities to provide a means of identifying the account, in addition to the account owner's identity and the account number.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "proxy" : {
            "$ref" : "#/components/schemas/ProxyAccountIdentification1"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides the details to identify an account.",
        "x-MXComponent" : "CashAccount38"
      },
      "CashAccountType2Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Nature or use of the account.",
        "x-MXComponent" : "CashAccountType2Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Account type, in a coded form.\n\nSpecifies the nature, or use, of the cash account in the format of character string with a maximum length of 4 characters.\nThe list of valid codes is an external code list published separately.\nExternal code sets can be downloaded from www.iso20022.org.\n",
              "x-MXComponent" : "ExternalCashAccountType1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Nature or use of the account in a proprietary form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "ChargesAndTax" : {
        "type" : "object",
        "properties" : {
          "local_bank_charges" : {
            "$ref" : "#/components/schemas/ChargesAndTax_local_bank_charges"
          },
          "gst_amount" : {
            "$ref" : "#/components/schemas/ChargesAndTax_gst_amount"
          },
          "total_amount" : {
            "$ref" : "#/components/schemas/ChargesAndTax_total_amount"
          }
        },
        "additionalProperties" : false,
        "description" : "Remittance Charges And Tax includes local bank charges, GST amount and total amount.",
        "x-MXComponent" : "ChargesAndTax"
      },
      "Contact4" : {
        "type" : "object",
        "properties" : {
          "name_prefix" : {
            "type" : "string",
            "description" : "Specifies the terms used to formally address a person.\n\nSpecifies the terms used to formally address a person.\n\nCode Name Definition:\n*`DOCT` - Doctor - Title of the person is Doctor or Dr.\n*`MADM` - Madam - Title of the person is Madam.\n*`MIKS` - GenderNeutral - Title of the person is gender neutral (Mx).\n*`MISS` - Miss - Title of the person is Miss.\n*`MIST` - Mister - Title of the person is Mister or Mr.\n",
            "x-MXComponent" : "NamePrefix2Code",
            "enum" : [ "DOCT", "MADM", "MIKS", "MISS", "MIST" ]
          },
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and which is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "phone_number" : {
            "pattern" : "^\\+[0-9]{1,3}-[0-9()+\\-]{1,30}$",
            "type" : "string",
            "description" : "Collection of information that identifies a phone number, as defined by telecom services.\n\nBased on datatype PhoneNumber: The collection of information which identifies a specific phone or FAX number as defined by telecom services.\nIt consists of a \"+\" followed by the country code (from 1 to 3 characters) then a \"-\" and finally, any combination of numbers, \"(\", \")\", \"+\" and \"-\" (up to 30 characters).\n",
            "x-MXComponent" : "PhoneNumber"
          },
          "mobile_number" : {
            "pattern" : "^\\+[0-9]{1,3}-[0-9()+\\-]{1,30}$",
            "type" : "string",
            "description" : "Collection of information that identifies a mobile phone number, as defined by telecom services.\n\nBased on datatype PhoneNumber: The collection of information which identifies a specific phone or FAX number as defined by telecom services.\nIt consists of a \"+\" followed by the country code (from 1 to 3 characters) then a \"-\" and finally, any combination of numbers, \"(\", \")\", \"+\" and \"-\" (up to 30 characters).\n",
            "x-MXComponent" : "PhoneNumber"
          },
          "fax_number" : {
            "pattern" : "^\\+[0-9]{1,3}-[0-9()+\\-]{1,30}$",
            "type" : "string",
            "description" : "Collection of information that identifies a FAX number, as defined by telecom services.\n\nBased on datatype PhoneNumber: The collection of information which identifies a specific phone or FAX number as defined by telecom services.\nIt consists of a \"+\" followed by the country code (from 1 to 3 characters) then a \"-\" and finally, any combination of numbers, \"(\", \")\", \"+\" and \"-\" (up to 30 characters).\n",
            "x-MXComponent" : "PhoneNumber"
          },
          "email_address" : {
            "maxLength" : 2048,
            "minLength" : 1,
            "type" : "string",
            "description" : "Address for electronic mail (e-mail).\n\nBased on datatype Max2048Text: Specifies a character string with a maximum length of 2048 characters.\n",
            "x-MXComponent" : "Max2048Text"
          },
          "email_purpose" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Purpose for which an email address may be used.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "job_title" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Title of the function.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "responsibility" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Role of a person in an organisation.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "other" : {
            "type" : "array",
            "description" : "Contact details in another form.",
            "items" : {
              "$ref" : "#/components/schemas/OtherContact1"
            }
          },
          "preferred_method" : {
            "type" : "string",
            "description" : "Preferred method used to reach the contact.\n\nPreferred method used to reach the individual contact within an organisation.\n\nCode Name Definition:\n*`CELL` - MobileOrCellPhone - Preferred method used to reach the contact is per mobile or cell phone.\n*`FAXX` - Fax - Preferred method used to reach the contact is per fax.\n*`LETT` - Letter - Preferred method used to reach the contact is per letter.\n*`MAIL` - Email - Preferred method used to reach the contact is per email.\n*`PHON` - Phone - Preferred method used to reach the contact is per phone.\n",
            "x-MXComponent" : "PreferredContactMethod1Code",
            "enum" : [ "CELL", "FAXX", "LETT", "MAIL", "PHON" ]
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the details of the contact person.",
        "x-MXComponent" : "Contact4"
      },
      "CreditorReferenceInformation5" : {
        "required" : [ "reference" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/CreditorReferenceType1Choice"
          },
          "issuer" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Entity that assigns the credit reference type.\n\nCGI-MP_IssuerRule: Value of 'ISO' reserved for ISO 11649 international creditor's reference.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "reference" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique reference, as assigned by the creditor, to unambiguously refer to the payment transaction.\n\nUsage: If available, the initiating party should provide this reference in the structured remittance information, to enable reconciliation by the creditor upon receipt of the amount of money.\n\nIf the business context requires the use of a creditor reference or a payment remit identification, and only one identifier can be passed through the end-to-end chain, the creditor's reference or payment remittance identification should be quoted in the end-to-end transaction identification.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Reference information provided by the creditor to allow the identification of the underlying documents.",
        "x-MXComponent" : "CreditorReferenceInformation5"
      },
      "CreditorReferenceType1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the type of document referred by the creditor.",
        "x-MXComponent" : "CreditorReferenceType1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "type" : "string",
              "description" : "Type of creditor reference, in a coded form.\n\nSpecifies a type of financial or commercial document.\n\nCode Name Definition:\n*`DISP` - DispatchAdvice - Document is a dispatch advice.\n*`FXDR` - ForeignExchangeDealReference - Document is a pre-agreed or pre-arranged foreign exchange transaction to which the payment transaction refers.\n*`PUOR` - PurchaseOrder - Document is a purchase order.\n*`RADM` - RemittanceAdviceMessage - Document is a remittance advice sent separately from the current transaction.\n*`RPIN` - RelatedPaymentInstruction - Document is a linked payment instruction to which the current payment instruction is related, for example, in a cover scenario.\n*`SCOR` - StructuredCommunicationReference - Document is a structured communication reference provided by the creditor to identify the referred transaction.\n",
              "x-MXComponent" : "DocumentType3Code",
              "enum" : [ "DISP", "FXDR", "PUOR", "RADM", "RPIN", "SCOR" ]
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Creditor reference type, in a proprietary form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "DateAndDateTime2Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Choice between a date or a date and time format.",
        "x-MXComponent" : "DateAndDateTime2Choice",
        "oneOf" : [ {
          "required" : [ "date" ],
          "type" : "object",
          "properties" : {
            "date" : {
              "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
              "type" : "string",
              "description" : "Specified date.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
              "x-MXComponent" : "ISODate"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "date_time" ],
          "type" : "object",
          "properties" : {
            "date_time" : {
              "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
              "type" : "string",
              "description" : "Specified date and time.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
              "x-MXComponent" : "ISODateTime"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "DateAndPlaceOfBirth1" : {
        "required" : [ "birth_date", "city_of_birth", "country_of_birth" ],
        "type" : "object",
        "properties" : {
          "birth_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date on which a person is born.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "province_of_birth" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Province where a person was born.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "city_of_birth" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "City where a person was born.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country_of_birth" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Country where a person was born.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          }
        },
        "additionalProperties" : false,
        "description" : "Date and place of birth of a person.",
        "x-MXComponent" : "DateAndPlaceOfBirth1"
      },
      "DatePeriod2" : {
        "required" : [ "from_date", "to_date" ],
        "type" : "object",
        "properties" : {
          "from_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Start date of the range.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "to_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "End date of the range.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          }
        },
        "additionalProperties" : false,
        "description" : "Range of time defined by a start date and an end date.",
        "x-MXComponent" : "DatePeriod2"
      },
      "DiscountAmountAndType1" : {
        "required" : [ "amount" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/DiscountAmountType1Choice"
          },
          "amount" : {
            "$ref" : "#/components/schemas/DiscountAmountAndType1_amount"
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the amount with a specific type.",
        "x-MXComponent" : "DiscountAmountAndType1"
      },
      "DiscountAmountType1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the amount type.",
        "x-MXComponent" : "DiscountAmountType1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Specifies the amount type, in a coded form.\n\nSpecifies the nature, or use, of the amount in the format of character string with a maximum length of 4 characters.\nThe list of valid codes is an external code list published separately.\nExternal code sets can be downloaded from www.iso20022.org.\n",
              "x-MXComponent" : "ExternalDiscountAmountType1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Specifies the amount type, in a free-text form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "DocumentAdjustment1" : {
        "required" : [ "amount" ],
        "type" : "object",
        "properties" : {
          "amount" : {
            "$ref" : "#/components/schemas/DocumentAdjustment1_amount"
          },
          "credit_debit_indicator" : {
            "type" : "string",
            "description" : "Specifies whether the adjustment must be subtracted or added to the total amount.\n\nSpecifies if an operation is an increase or a decrease.\n\nCode Name Definition:\n*`CRDT` - Credit - Operation is an increase.\n*`DBIT` - Debit - Operation is a decrease.\nSynonyms\nValue: :22F::CRDB - Context: ISO 15022\n",
            "x-MXComponent" : "CreditDebitCode",
            "enum" : [ "CRDT", "DBIT" ]
          },
          "reason" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the reason for the adjustment.\n\nBased on datatype Max4Text: Specifies a character string with a maximum length of 4 characters.\n",
            "x-MXComponent" : "Max4Text"
          },
          "additional_information" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Provides further details on the document adjustment.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Set of elements used to provide information on the amount and reason of the document adjustment.",
        "x-MXComponent" : "DocumentAdjustment1"
      },
      "DocumentLineIdentification1" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/DocumentLineType1"
          },
          "number" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of the type specified for the referred document line.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "related_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date associated with the referred document line.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          }
        },
        "additionalProperties" : false,
        "description" : "Identifies the documents referred to in the remittance information.",
        "x-MXComponent" : "DocumentLineIdentification1"
      },
      "DocumentLineInformation1" : {
        "required" : [ "identification" ],
        "type" : "object",
        "properties" : {
          "identification" : {
            "type" : "array",
            "description" : "Provides identification of the document line.",
            "items" : {
              "$ref" : "#/components/schemas/DocumentLineIdentification1"
            }
          },
          "description" : {
            "maxLength" : 2048,
            "minLength" : 1,
            "type" : "string",
            "description" : "Description associated with the document line.\n\nBased on datatype Max2048Text: Specifies a character string with a maximum length of 2048 characters.\n",
            "x-MXComponent" : "Max2048Text"
          },
          "amount" : {
            "$ref" : "#/components/schemas/RemittanceAmount3"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides document line information.\n",
        "x-MXComponent" : "DocumentLineInformation1"
      },
      "DocumentLineType1" : {
        "required" : [ "code_or_proprietary" ],
        "type" : "object",
        "properties" : {
          "code_or_proprietary" : {
            "$ref" : "#/components/schemas/DocumentLineType1Choice"
          },
          "issuer" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of the issuer of the reference document line identificationtype.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the type of the document line identification.",
        "x-MXComponent" : "DocumentLineType1"
      },
      "DocumentLineType1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the type of the document line identification.",
        "x-MXComponent" : "DocumentLineType1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Line identification type in a coded form.\n\nSpecifies the document line type as published in an external document type code list.\n",
              "x-MXComponent" : "ExternalDocumentLineType1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Proprietary identification of the type of the remittance document.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "EquivalentAmount2" : {
        "required" : [ "amount", "currency_of_transfer" ],
        "type" : "object",
        "properties" : {
          "amount" : {
            "$ref" : "#/components/schemas/EquivalentAmount2_amount"
          },
          "currency_of_transfer" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "description" : "Specifies the currency of the to be transferred amount, which is different from the currency of the debtor's account.\n\nA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 \"Codes for the representation of currencies and funds\".\n",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money to be moved between the debtor and creditor, expressed in the currency of the debtor's account, and the currency in which the amount is to be moved.",
        "x-MXComponent" : "EquivalentAmount2"
      },
      "ExchangeRate1" : {
        "type" : "object",
        "properties" : {
          "unit_currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "description" : "Currency in which the rate of exchange is expressed in a currency exchange. In the example 1GBP = xxxCUR, the unit currency is GBP.\n\nA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 \"Codes for the representation of currencies and funds\".\n",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "exchange_rate" : {
            "maxLength" : 12,
            "type" : "string",
            "description" : "The factor used for conversion of an amount from one currency to another. This reflects the price at which one currency was bought with another currency.\n\nBased on datatype BaseOneRate: Rate expressed as a decimal, for example, 0.7 is 7/10 and 70%.\n",
            "x-MXComponent" : "BaseOneRate"
          },
          "rate_type" : {
            "type" : "string",
            "description" : "Specifies the type used to complete the currency exchange.\n\nSpecifies a type of financial or commercial document.\n\nCode Name Definition:\n*`AGRD` - Agreed - Exchange rate applied is the rate agreed between the parties.\n*`SALE` - Sale - Exchange rate applied is the market rate at the time of the sale.\n*`SPOT` - Spot - Exchange rate applied is the spot rate.\n",
            "x-MXComponent" : "ExchangeRateType1Code",
            "enum" : [ "AGRD", "SALE", "SPOT" ]
          },
          "contract_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique and unambiguous reference to the foreign exchange contract agreed between the initiating party/creditor and the debtor agent.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Further detailed information on the exchange rate that has been used in the payment transaction.",
        "x-MXComponent" : "ExchangeRate1"
      },
      "FinancialIdentificationSchemeName1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Sets of elements to identify a name of the organisation identification scheme.",
        "x-MXComponent" : "FinancialIdentificationSchemeName1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a coded form as published in an external list.\n\nSpecifies the external financial institution identification scheme name code in the format of character string with a maximum length of 4 characters.\nThe list of valid codes is an external code list published separately.\nExternal code sets can be downloaded from www.iso20022.org.\n",
              "x-MXComponent" : "ExternalFinancialInstitutionIdentification1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a free text form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "ForeignRemittance1" : {
        "required" : [ "foreign_remittance_purpose", "invoice_data" ],
        "type" : "object",
        "properties" : {
          "foreign_remittance_purpose" : {
            "type" : "array",
            "description" : "Purpose of Remittance can be:\n- Advance Imports of Goods or\n- Post Shipment Import of Goods or\n- Services (Non-import Remittances. i.e. A2)\n- Liberalised Remittance Scheme\n\nFor A1/A2 in India\n\nCode Name Definition:\n*`AIMP` - AdvanceImportOfGoods - Advance Import Of Goods.\n*`LRSP` - LiberalisedRemittanceScheme - Liberalised Remittance Scheme.\n*`PIMP` - PostShipmentImportOfGoods - Post Shipment Import Of Goods.\n*`SERV` - NonImportRemittances - Services - A2.\n",
            "items" : {
              "type" : "string",
              "x-MXComponent" : "ForeignRemittancePurpose1Code",
              "enum" : [ "AIMP", "LRSP", "PIMP", "SERV" ]
            }
          },
          "advance_import_guarantee_data" : {
            "type" : "array",
            "description" : "Data about Advance Import of Goods.\n\nUsage Rule:\nFields related to Advance Imports may/may not be populated depending on the scenarios listed by the Reserve Bank of India (RBI). For more details refer 'Master Direction – Import of Goods and Services' document published on RBI's website https://www.rbi.org.in/\n",
            "items" : {
              "$ref" : "#/components/schemas/AdvanceImportGuaranteeData1"
            }
          },
          "post_shipment_data" : {
            "type" : "array",
            "description" : "Post Shipment data regarding bill of entry, or transport documents and shipment data.",
            "items" : {
              "$ref" : "#/components/schemas/PostShipmentData1"
            }
          },
          "goods_type" : {
            "type" : "string",
            "description" : "Goods Type can be raw material or capital goods.\nGoodsTypeRule\nGoods type to be mandatorily populated when the purpose of remittance is other than - Non-Import (Services) remittances or A2\n\nType of goods.\n\nCode Name Definition:\n*`CAPG` - CapitalGoods - Capital Goods.\n*`RAWM` - RawMaterial - Raw Material.\n",
            "x-MXComponent" : "GoodsType1Code",
            "enum" : [ "CAPG", "RAWM" ]
          },
          "additional_information_for_banks" : {
            "type" : "array",
            "description" : "Information from customer to its bank.\n\nThis field can be used to indicate Delay reason etc.\n\nAlso used to indicate the declaration for remittances. All the declarations must begin with a code. Codes to be enclosed within '/'.\n\nList of codes are: FEMA, BOED (BOE Declaration), DELD (Delayed payment declaration), NNLD (For NNL Declaration)\n\nE.g. /BOED/\n\nThis field may also be used to indicate names of multiple files sent via FileAct. Follow the SWIFT IN File naming convention for naming information.\n\nBased on datatype Max1850Text: Specifies a character string with a maximum length of 1850 characters.\n",
            "items" : {
              "maxLength" : 1850,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max1850Text"
            }
          },
          "invoice_data" : {
            "type" : "array",
            "description" : "PO or PI or Invoice Details",
            "items" : {
              "$ref" : "#/components/schemas/InvoiceData1"
            }
          },
          "payment_information_data" : {
            "type" : "array",
            "description" : "Debit Authority, Exchange rate and Purpose code details",
            "items" : {
              "$ref" : "#/components/schemas/PaymentInformationData1"
            }
          },
          "summary_data" : {
            "$ref" : "#/components/schemas/SummaryData2"
          },
          "charges_and_tax" : {
            "$ref" : "#/components/schemas/ChargesAndTax"
          },
          "ultimate_debtor_nationality" : {
            "$ref" : "#/components/schemas/UltimateDebtorNationality1"
          }
        },
        "additionalProperties" : false,
        "description" : "Foreign Remittance Details for A1/A2 in India.",
        "x-MXComponent" : "ForeignRemittance1"
      },
      "Garnishment3" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/GarnishmentType1"
          },
          "garnishee" : {
            "$ref" : "#/components/schemas/PartyIdentification135"
          },
          "garnishment_administrator" : {
            "$ref" : "#/components/schemas/PartyIdentification135"
          },
          "reference_number" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Reference information that is specific to the agency receiving the garnishment.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date of payment which garnishment was taken from.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "remitted_amount" : {
            "$ref" : "#/components/schemas/Garnishment3_remitted_amount"
          },
          "family_medical_insurance_indicator" : {
            "type" : "boolean",
            "description" : "Indicates if the person to whom the garnishment applies (that is, the ultimate debtor) has family medical insurance coverage available.\n\nBased on datatype TrueFalseIndicator: A flag indicating a True or False value.\n",
            "x-MXComponent" : "TrueFalseIndicator"
          },
          "employee_termination_indicator" : {
            "type" : "boolean",
            "description" : "Indicates if the employment of the person to whom the garnishment applies (that is, the ultimate debtor) has been terminated.\n\nBased on datatype TrueFalseIndicator: A flag indicating a True or False value.\n",
            "x-MXComponent" : "TrueFalseIndicator"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides remittance information about a payment for garnishment-related purposes.",
        "x-MXComponent" : "Garnishment3"
      },
      "GarnishmentType1" : {
        "required" : [ "code_or_proprietary" ],
        "type" : "object",
        "properties" : {
          "code_or_proprietary" : {
            "$ref" : "#/components/schemas/GarnishmentType1Choice"
          },
          "issuer" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of the issuer of the garnishment type.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the type of garnishment.",
        "x-MXComponent" : "GarnishmentType1"
      },
      "GarnishmentType1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the type of garnishment.",
        "x-MXComponent" : "GarnishmentType1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Garnishment type in a coded form.\nWould suggest this to be an External Code List to contain:\nGNCS    Garnishment from a third party payer for Child Support\nGNDP    Garnishment from a Direct Payer for Child Support\nGTPP     Garnishment from a third party payer to taxing agency.\n\nSpecifies the garnishment type as published in an external document type code list.\n",
              "x-MXComponent" : "ExternalGarnishmentType1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Proprietary identification of the type of garnishment.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "GenericAccountIdentification1" : {
        "required" : [ "identification" ],
        "type" : "object",
        "properties" : {
          "identification" : {
            "maxLength" : 34,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification assigned by an institution.\n\nBased on datatype Max34Text: Specifies a character string with a maximum length of 34 characters.\n",
            "x-MXComponent" : "Max34Text"
          },
          "scheme_name" : {
            "$ref" : "#/components/schemas/AccountSchemeName1Choice"
          },
          "issuer" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Entity that assigns the identification.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Information related to a generic account identification.",
        "x-MXComponent" : "GenericAccountIdentification1"
      },
      "GenericFinancialIdentification1" : {
        "required" : [ "identification" ],
        "type" : "object",
        "properties" : {
          "identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique and unambiguous identification of a person.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "scheme_name" : {
            "$ref" : "#/components/schemas/FinancialIdentificationSchemeName1Choice"
          },
          "issuer" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Entity that assigns the identification.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Information related to an identification of a financial institution.",
        "x-MXComponent" : "GenericFinancialIdentification1"
      },
      "GenericIdentification30" : {
        "required" : [ "identification", "issuer" ],
        "type" : "object",
        "properties" : {
          "identification" : {
            "pattern" : "^[a-zA-Z0-9]{4}$",
            "type" : "string",
            "description" : "Proprietary information, often a code, issued by the data source scheme issuer.\n\nBased on datatype Exact4AlphaNumericText: Specifies an alphanumeric string with a length of 4 characters.\n",
            "x-MXComponent" : "Exact4AlphaNumericText"
          },
          "issuer" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Entity that assigns the identification.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "scheme_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Short textual description of the scheme.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Information related to an identification, for example, party identification or account identification.",
        "x-MXComponent" : "GenericIdentification30"
      },
      "GenericOrganisationIdentification1" : {
        "required" : [ "identification" ],
        "type" : "object",
        "properties" : {
          "identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification assigned by an institution.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "scheme_name" : {
            "$ref" : "#/components/schemas/OrganisationIdentificationSchemeName1Choice"
          },
          "issuer" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Entity that assigns the identification.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Information related to an identification of an organisation.",
        "x-MXComponent" : "GenericOrganisationIdentification1"
      },
      "GenericOrganisationIdentification5" : {
        "type" : "object",
        "properties" : {
          "identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification assigned by an institution.\n\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "scheme_name" : {
            "type" : "string",
            "description" : "Name of the identification scheme.\n\n\nOriganisation identification scheme codes used for JVIN\n\nCode Name Definition:\n*`BANK` - SenderOfStatus - Sender of Status.\n\n\n*`CIN` - CIN - CIN id for Foreign Remittance.\n*`CUST` - ReceiverOfStatus - Receiver of Status.\n*`GSTN` - GSTN - GSTN id for Foreign Remittance.\n*`PAN` - PAN - PAN id for Foreign Remittance.\n",
            "x-MXComponent" : "IndiaOrgIdScheme1Code",
            "enum" : [ "BANK", "CIN", "CUST", "GSTN", "PAN" ]
          }
        },
        "additionalProperties" : false,
        "description" : "Information related to an identification of an organisation.",
        "x-MXComponent" : "GenericOrganisationIdentification5"
      },
      "GenericPersonIdentification1" : {
        "required" : [ "identification" ],
        "type" : "object",
        "properties" : {
          "identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique and unambiguous identification of a person.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "scheme_name" : {
            "$ref" : "#/components/schemas/PersonIdentificationSchemeName1Choice"
          },
          "issuer" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Entity that assigns the identification.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Information related to an identification of a person.",
        "x-MXComponent" : "GenericPersonIdentification1"
      },
      "GoodsAndServicesData1" : {
        "required" : [ "description_of_goods_services" ],
        "type" : "object",
        "properties" : {
          "description_of_goods_services" : {
            "type" : "array",
            "description" : "This field can be used to describe details of Spares / Machine / Product name /Engineering / Professional / Technical Services etc.\n\nApplicable also for Non-Import Remittances (A2).\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "items" : {
              "maxLength" : 140,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max140Text"
            }
          },
          "harmonised_community_code" : {
            "type" : "array",
            "description" : "Harmonised Community Code issued by Customs dept.\nThis is an external code.\n\nBased on datatype Max12Text: Specifies a character string with a maximum length of 12 characters.\n",
            "items" : {
              "maxLength" : 12,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max12Text"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Contains Description of Goods and Services and HS Code.",
        "x-MXComponent" : "GoodsAndServicesData1"
      },
      "InstructionForCreditorAgent1" : {
        "type" : "object",
        "properties" : {
          "code" : {
            "type" : "string",
            "description" : "Coded information related to the processing of the payment instruction, provided by the initiating party, and intended for the creditor's agent.\n\nSpecifies further instructions concerning the processing of a payment instruction, provided by the sending clearing agent to the next agent(s).\n\nCode Name Definition:\n*`CHQB` - PayCreditorByCheque - (Ultimate) creditor must be paid by cheque.\n*`HOLD` - HoldCashForCreditor - Amount of money must be held for the (ultimate) creditor, who will call. Pay on identification.\n*`PHOB` - PhoneBeneficiary - Please advise/contact (ultimate) creditor/claimant by phone.\n*`TELB` - Telecom - Please advise/contact (ultimate) creditor/claimant by the most efficient means of telecommunication.\n",
            "x-MXComponent" : "Instruction3Code",
            "enum" : [ "CHQB", "HOLD", "PHOB", "TELB" ]
          },
          "instruction_information" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Further information complementing the coded instruction or instruction to the creditor's agent that is bilaterally agreed or specific to a user community.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Further information related to the processing of the payment instruction that may need to be acted upon by the creditor's agent. The instruction may relate to a level of service, or may be an instruction that has to be executed by the creditor's agent, or may be information required by the creditor's agent.",
        "x-MXComponent" : "InstructionForCreditorAgent1"
      },
      "InvoiceData1" : {
        "required" : [ "goods_and_services_data", "invoice_amount", "invoice_date", "invoice_number", "net_payable_amount" ],
        "type" : "object",
        "properties" : {
          "invoice_number" : {
            "maxLength" : 34,
            "minLength" : 1,
            "type" : "string",
            "description" : "Invoice Number.\n\nBased on datatype Max34Text: Specifies a character string with a maximum length of 34 characters.\n",
            "x-MXComponent" : "Max34Text"
          },
          "invoice_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Invoice Date.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "invoice_amount" : {
            "$ref" : "#/components/schemas/InvoiceData1_invoice_amount"
          },
          "misc_charges" : {
            "$ref" : "#/components/schemas/InvoiceData1_misc_charges"
          },
          "net_payable_amount" : {
            "$ref" : "#/components/schemas/InvoiceData1_net_payable_amount"
          },
          "purchase_order_details" : {
            "type" : "array",
            "description" : "Indicates PO/PI Number, PO/PI Amount and PO/PI Date.",
            "items" : {
              "$ref" : "#/components/schemas/PurchaseOrderData1"
            }
          },
          "goods_and_services_data" : {
            "type" : "array",
            "description" : "Goods And Or Services details",
            "items" : {
              "$ref" : "#/components/schemas/GoodsAndServicesData1"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "PO or PI or Invoice Details.",
        "x-MXComponent" : "InvoiceData1"
      },
      "NameAndAddress16" : {
        "required" : [ "address", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "address" : {
            "$ref" : "#/components/schemas/PostalAddress24"
          }
        },
        "additionalProperties" : false,
        "description" : "Information that locates and identifies a party.",
        "x-MXComponent" : "NameAndAddress16"
      },
      "NameAndAddress20" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "sub_department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a sub-division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "street_name" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a street or thoroughfare.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "building_number" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Number that identifies the position of a building on a street.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "building_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the building or house.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "floor" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Floor or storey within a building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_box" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Numbered box in a post office, assigned to a person or organisation, where letters are kept until called for.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "room" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Building room number.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_code" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "town_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a built-up area, with defined boundaries, and a local government.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "town_location_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specific location name within the town.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "district_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision within a country sub-division.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country_sub_division" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision of a country such as state, region, county.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Nation with its own government.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "address_line" : {
            "maxItems" : 7,
            "type" : "array",
            "description" : "Information that locates and identifies a specific address, as defined by postal services, presented in free format text.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "items" : {
              "maxLength" : 70,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max70Text"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Information that locates and identifies a party.",
        "x-MXComponent" : "NameAndAddress20"
      },
      "NameAndAddress21" : {
        "required" : [ "country", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "sub_department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a sub-division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "street_name" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a street or thoroughfare.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "building_number" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Number that identifies the position of a building on a street.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "building_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the building or house.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "floor" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Floor or storey within a building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_box" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Numbered box in a post office, assigned to a person or organisation, where letters are kept until called for.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "room" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Building room number.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_code" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "town_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a built-up area, with defined boundaries, and a local government.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "town_location_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specific location name within the town.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "district_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision within a country sub-division.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country_sub_division" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision of a country such as state, region, county.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Nation with its own government.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "address_line" : {
            "maxItems" : 7,
            "type" : "array",
            "description" : "Information that locates and identifies a specific address, as defined by postal services, presented in free format text.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "items" : {
              "maxLength" : 70,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max70Text"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Information that locates and identifies a party.",
        "x-MXComponent" : "NameAndAddress21"
      },
      "NumberOfTransactionsPerStatus5" : {
        "required" : [ "detailed_number_of_transactions", "detailed_status" ],
        "type" : "object",
        "properties" : {
          "detailed_number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the message, detailed per status.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "detailed_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Common transaction status for all individual transactions reported.\n\nSpecifies the status of an individual payment instructions, as published in an external payment transaction status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentTransactionStatus1Code"
          },
          "detailed_control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the message, irrespective of currencies, detailed per status.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          }
        },
        "additionalProperties" : false,
        "description" : "Set of elements used to provide detailed information on the number of transactions that are reported with a specific transaction status.",
        "x-MXComponent" : "NumberOfTransactionsPerStatus5"
      },
      "OrganisationIdentification29" : {
        "type" : "object",
        "properties" : {
          "any_bic" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Business identification code of the organisation.\n\nBased on datatype AnyBICDec2014Identifier: Code allocated to a financial or non-financial institution by the ISO 9362 Registration Authority, as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "AnyBICDec2014Identifier"
          },
          "lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identification as an alternate identification for a party.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "other" : {
            "type" : "array",
            "description" : "Unique identification of an organisation, as assigned by an institution, using an identification scheme.",
            "items" : {
              "$ref" : "#/components/schemas/GenericOrganisationIdentification1"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Unique and unambiguous way to identify an organisation.",
        "x-MXComponent" : "OrganisationIdentification29"
      },
      "OrganisationIdentification45" : {
        "type" : "object",
        "properties" : {
          "any_bic" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Business identification code of the organisation.\n\n\n\nBased on datatype AnyBICDec2014Identifier: Code allocated to a financial or non-financial institution by the ISO 9362 Registration Authority, as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "AnyBICDec2014Identifier"
          },
          "lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identification as an alternate identification for a party.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "other" : {
            "type" : "array",
            "description" : "Unique identification of an organisation, as assigned by an institution, using an identification scheme.\n\nRepeat this block for PAN, CIN and GSTN Numbers for Foreign Remittances\n\n",
            "items" : {
              "$ref" : "#/components/schemas/GenericOrganisationIdentification5"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Unique and unambiguous way to identify an organisation.",
        "x-MXComponent" : "OrganisationIdentification45"
      },
      "OrganisationIdentificationSchemeName1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Sets of elements to identify a name of the organisation identification scheme.",
        "x-MXComponent" : "OrganisationIdentificationSchemeName1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a coded form as published in an external list.\n\nSpecifies the external organisation identification scheme name code in the format of character string with a maximum length of 4 characters.\nThe list of valid codes is an external code list published separately.\nExternal code sets can be downloaded from www.iso20022.org.\n",
              "x-MXComponent" : "ExternalOrganisationIdentification1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a free text form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "OtherContact1" : {
        "required" : [ "channel_type" ],
        "type" : "object",
        "properties" : {
          "channel_type" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Method used to contact the financial institution’s contact for the specific tax region.\n\nBased on datatype Max4Text: Specifies a character string with a maximum length of 4 characters.\n",
            "x-MXComponent" : "Max4Text"
          },
          "identification" : {
            "maxLength" : 128,
            "minLength" : 1,
            "type" : "string",
            "description" : "Communication value such as phone number or email address.\n\nBased on datatype Max128Text: Specifies a character string with a maximum length of 128 characters.\n",
            "x-MXComponent" : "Max128Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Communication device number or electronic address used for communication.",
        "x-MXComponent" : "OtherContact1"
      },
      "Party38Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Nature or use of the account.",
        "x-MXComponent" : "Party38Choice",
        "oneOf" : [ {
          "required" : [ "organisation_identification" ],
          "type" : "object",
          "properties" : {
            "organisation_identification" : {
              "$ref" : "#/components/schemas/OrganisationIdentification29"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "private_identification" ],
          "type" : "object",
          "properties" : {
            "private_identification" : {
              "$ref" : "#/components/schemas/PersonIdentification13"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "Party60Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Identification of a person, an organisation or a financial institution.",
        "x-MXComponent" : "Party60Choice",
        "oneOf" : [ {
          "required" : [ "party" ],
          "type" : "object",
          "properties" : {
            "party" : {
              "$ref" : "#/components/schemas/PartyIdentification304"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "agent" ],
          "type" : "object",
          "properties" : {
            "agent" : {
              "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification15"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "PartyIdentification135" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and which is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "postal_address" : {
            "$ref" : "#/components/schemas/PostalAddress24"
          },
          "identification" : {
            "$ref" : "#/components/schemas/Party38Choice"
          },
          "country_of_residence" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Country in which a person resides (the place of a person's home). In the case of a company, it is the country from which the affairs of that company are directed.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "contact_details" : {
            "$ref" : "#/components/schemas/Contact4"
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the identification of a person or an organisation.",
        "x-MXComponent" : "PartyIdentification135"
      },
      "PartyIdentification302" : {
        "required" : [ "country", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and which is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "town_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a built-up area, with defined boundaries, and a local government.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Nation with its own government.\nFixed value IN for India.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "address_line" : {
            "maxItems" : 7,
            "type" : "array",
            "description" : "Information that locates and identifies a specific address, as defined by postal services, presented in free format text.\n\nRule if Local Instrument is \"RTGS\"\n: Debtor/PostalAddress/AddressLine\n4 * Max70Text\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "items" : {
              "maxLength" : 70,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max70Text"
            }
          },
          "identification" : {
            "$ref" : "#/components/schemas/OrganisationIdentification45"
          },
          "country_of_residence" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Country in which a person resides (the place of a person's home). In the case of a company, it is the country from which the affairs of that company are directed.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "contact_details" : {
            "$ref" : "#/components/schemas/Contact4"
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the identification of a person or an organisation.",
        "x-MXComponent" : "PartyIdentification302"
      },
      "PartyIdentification304" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and which is usually used to identify that party.\n\nCreditor Name\nRTGS supports max140Text.\nWill be truncated for other clearing system:\nWire - Max70 (MT013 / 202 - 50a Ordering Customer)\nNEFT - Max50Text\nECS/NACH  - Max40Text\n\nRequired for Foreign Remittances as well\n\nNEFT: N06.6081 Beneficiary Customer Account Name\nReceiving customer’s account name\n50x\n\nNG-RTGS: Creditor/Name\nMandatory in view of Indian Context (Ref. Circular issued by RBI).\nMax140Text\n\nECS/NECS: 22.6 Destination Account Holder's Name\n40-character description.\n\nNACH: 23.6 Beneficiary Account Holder's Name\nMandatory, 40-character description.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "sub_department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a sub-division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "street_name" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a street or thoroughfare.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "building_number" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Number that identifies the position of a building on a street.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "building_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the building or house.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "floor" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Floor or storey within a building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_box" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Numbered box in a post office, assigned to a person or organisation, where letters are kept until called for.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "room" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Building room number.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_code" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "town_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a built-up area, with defined boundaries, and a local government.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "town_location_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specific location name within the town.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "district_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision within a country sub-division.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country_sub_division" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision of a country such as state, region, county.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Nation with its own government.\n\nUsage Rule: mandatory for Debtor and Creditor in Payment Initiation.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "address_line" : {
            "maxItems" : 4,
            "type" : "array",
            "description" : "Information that locates and identifies a specific address, as defined by postal services, presented in free format text.\n\nNEFT: N06.5565 Beneficiary Customer Address\n4 * 35x\n\nNG-RTGS: Creditor/PostalAddress/AddressLine\n4 * Max70Text\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "items" : {
              "maxLength" : 70,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max70Text"
            }
          },
          "organisation_identification" : {
            "$ref" : "#/components/schemas/OrganisationIdentification45"
          },
          "private_identification" : {
            "$ref" : "#/components/schemas/PersonIdentification16"
          },
          "country_of_residence" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Country in which a person resides (the place of a person's home). In the case of a company, it is the country from which the affairs of that company are directed.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "contact_details" : {
            "$ref" : "#/components/schemas/Contact4"
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the identification of a person or an organisation.",
        "x-MXComponent" : "PartyIdentification304"
      },
      "PartyIdentification307" : {
        "required" : [ "identification" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and which is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "identification" : {
            "$ref" : "#/components/schemas/OrganisationIdentification45"
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the identification of a person or an organisation.",
        "x-MXComponent" : "PartyIdentification307"
      },
      "PaymentInformationData1" : {
        "required" : [ "debtor_account" ],
        "type" : "object",
        "properties" : {
          "debtor_account" : {
            "maxLength" : 34,
            "minLength" : 1,
            "type" : "string",
            "description" : "Debtor Account Number.\n\nBased on datatype Max34Text: Specifies a character string with a maximum length of 34 characters.\n",
            "x-MXComponent" : "Max34Text"
          },
          "purpose_code" : {
            "maxLength" : 5,
            "minLength" : 1,
            "type" : "string",
            "description" : "Purpose Code as assigned by RBI.\n\nUsage rule: Although the field is optional, the corporate customer must make sure that this field is populated in case of A2 payments.\n\nBased on datatype Max5Text: Specifies a character string with a maximum length of 5 characters.\n",
            "x-MXComponent" : "Max5Text"
          },
          "purpose_code_group_name" : {
            "maxLength" : 76,
            "minLength" : 1,
            "type" : "string",
            "description" : "Purpose Code Group Name as defined by RBI.\n\nBased on datatype Max76Text: Specifies a character string with a maximum length of 76 characters.\n",
            "x-MXComponent" : "Max76Text"
          },
          "amount_details" : {
            "$ref" : "#/components/schemas/AmountData4"
          },
          "exchange_rate_information" : {
            "$ref" : "#/components/schemas/ExchangeRate1"
          }
        },
        "additionalProperties" : false,
        "description" : "Debit Authority, Exchange rate and Purpose code details.",
        "x-MXComponent" : "PaymentInformationData1"
      },
      "PersonIdentification13" : {
        "type" : "object",
        "properties" : {
          "date_and_place_of_birth" : {
            "$ref" : "#/components/schemas/DateAndPlaceOfBirth1"
          },
          "other" : {
            "type" : "array",
            "description" : "Unique identification of a person, as assigned by an institution, using an identification scheme.",
            "items" : {
              "$ref" : "#/components/schemas/GenericPersonIdentification1"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Unique and unambiguous way to identify a person.",
        "x-MXComponent" : "PersonIdentification13"
      },
      "PersonIdentification16" : {
        "type" : "object",
        "properties" : {
          "date_and_place_of_birth" : {
            "$ref" : "#/components/schemas/DateAndPlaceOfBirth1"
          },
          "other_identification" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "Unique identification of a person, as assigned by an institution, using an identification scheme.\n\nFor APBS, 15-digit Aadhaar (India resident unique identification number) number allotted by UIDAI (Unique Identification Authority of India).\n\nNACH: 23.21 Beneficiary Aadhaar Number\nMandatory for APBS. 15 digit number.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "items" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max35Text"
            }
          },
          "scheme_name" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "Name of the identification scheme.\n\nIdentification Scheme Name Code\nAADH = Aadhaar Number\n\nNACH: AADH = Aadhaar\n\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "items" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max35Text"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Unique and unambiguous way to identify a person.",
        "x-MXComponent" : "PersonIdentification16"
      },
      "PersonIdentificationSchemeName1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Sets of elements to identify a name of the identification scheme.",
        "x-MXComponent" : "PersonIdentificationSchemeName1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a coded form as published in an external list.\n\nSpecifies the external person identification scheme name code in the format of character string with a maximum length of 4 characters.\nThe list of valid codes is an external code list published separately.\nExternal code sets can be downloaded from www.iso20022.org.\n",
              "x-MXComponent" : "ExternalPersonIdentification1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a free text form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "PostShipmentData1" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Post Shipment Choice. Can be -\n\n- BOE details\n- Transport Data information.\n",
        "x-MXComponent" : "PostShipmentData1",
        "oneOf" : [ {
          "required" : [ "bill_of_entry_and_shipment_data" ],
          "type" : "object",
          "properties" : {
            "bill_of_entry_and_shipment_data" : {
              "$ref" : "#/components/schemas/BillOfEntryAndShipmentData1"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "transport_document_and_shipment_data" ],
          "type" : "object",
          "properties" : {
            "transport_document_and_shipment_data" : {
              "$ref" : "#/components/schemas/TransportDocumentAndShipmentData1"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "PostalAddress24" : {
        "type" : "object",
        "properties" : {
          "address_type" : {
            "$ref" : "#/components/schemas/AddressType3Choice"
          },
          "department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "sub_department" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a sub-division of a large organisation or building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "street_name" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a street or thoroughfare.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "building_number" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Number that identifies the position of a building on a street.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "building_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the building or house.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "floor" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Floor or storey within a building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_box" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Numbered box in a post office, assigned to a person or organisation, where letters are kept until called for.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "room" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Building room number.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_code" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "town_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of a built-up area, with defined boundaries, and a local government.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "town_location_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specific location name within the town.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "district_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision within a country sub-division.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country_sub_division" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision of a country such as state, region, county.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Nation with its own government.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "address_line" : {
            "maxItems" : 7,
            "type" : "array",
            "description" : "Information that locates and identifies a specific address, as defined by postal services, presented in free format text.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "items" : {
              "maxLength" : 70,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max70Text"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Information that locates and identifies a specific address, as defined by postal services.",
        "x-MXComponent" : "PostalAddress24"
      },
      "ProxyAccountIdentification1" : {
        "required" : [ "identification" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/ProxyAccountType1Choice"
          },
          "identification" : {
            "maxLength" : 2048,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification used to indicate the account identification under another specified name.\n\nBased on datatype Max2048Text: Specifies a character string with a maximum length of 2048 characters.\n",
            "x-MXComponent" : "Max2048Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Information related to a proxy  identification of the account.",
        "x-MXComponent" : "ProxyAccountIdentification1"
      },
      "ProxyAccountType1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the scheme used for the identification of an account alias.",
        "x-MXComponent" : "ProxyAccountType1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a coded form as published in an external list.\n\nSpecifies the external proxy account type code, as published in the proxy account type external code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
              "x-MXComponent" : "ExternalProxyAccountType1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Name of the identification scheme, in a free text form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "PurchaseOrderData1" : {
        "required" : [ "purchase_order_amount", "purchase_order_date", "purchase_order_number" ],
        "type" : "object",
        "properties" : {
          "purchase_order_number" : {
            "maxLength" : 34,
            "minLength" : 1,
            "type" : "string",
            "description" : "PO or PI Number.\n\nBased on datatype Max34Text: Specifies a character string with a maximum length of 34 characters.\n",
            "x-MXComponent" : "Max34Text"
          },
          "purchase_order_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "PO or PI Date.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "purchase_order_amount" : {
            "$ref" : "#/components/schemas/PurchaseOrderData1_purchase_order_amount"
          }
        },
        "additionalProperties" : false,
        "description" : "This component is used to indicate PO/PI Number, PO/PI Amount and PO/PI Date.",
        "x-MXComponent" : "PurchaseOrderData1"
      },
      "Purpose2Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the underlying reason for the payment transaction.\nUsage: Purpose is used by the end-customers, that is initiating party, (ultimate) debtor, (ultimate) creditor to provide information concerning the nature of the payment. Purpose is a content element, which is not used for processing by any of the agents involved in the payment chain.\n",
        "x-MXComponent" : "Purpose2Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Underlying reason for the payment transaction, as published in an external purpose code list.\n\nSpecifies the external purpose code in the format of character string with a maximum length of 4 characters.\nThe list of valid codes is an external code list published separately.\nExternal code sets can be downloaded from www.iso20022.org.\n",
              "x-MXComponent" : "ExternalPurpose1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Purpose, in a proprietary form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "ReferredDocumentInformation10" : {
        "required" : [ "number" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/ReferredDocumentType4"
          },
          "number" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique and unambiguous identification of the referred document.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "related_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date associated with the referred document.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "line_details" : {
            "type" : "array",
            "description" : "Set of elements used to provide the content of the referred document line.",
            "items" : {
              "$ref" : "#/components/schemas/DocumentLineInformation1"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Set of elements used to identify the documents referred to in the remittance information.",
        "x-MXComponent" : "ReferredDocumentInformation10"
      },
      "ReferredDocumentType3Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the type of the document referred in the remittance information.",
        "x-MXComponent" : "ReferredDocumentType3Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "type" : "string",
              "description" : "Document type in a coded form.\n\nSpecifies a type of financial or commercial document.\n\nCode Name Definition:\n*`AROI` - AccountReceivableOpenItem - Document is a payment that applies to a specific source document.\n*`BOLD` - BillOfLading - Document is a shipping notice.\n*`CINV` - CommercialInvoice - Document is an invoice.\n*`CMCN` - CommercialContract - Document is an agreement between the parties, stipulating the terms and conditions of the delivery of goods or services.\n*`CNFA` - CreditNoteRelatedToFinancialAdjustment - Document is a credit note for the final amount settled for a commercial transaction.\n*`CREN` - CreditNote - Document is a credit note.\n*`DEBN` - DebitNote - Document is a debit note.\n*`DISP` - DispatchAdvice - Document is a dispatch advice.\n*`DNFA` - DebitNoteRelatedToFinancialAdjustment - Document is a debit note for the final amount settled for a commercial transaction.\n*`HIRI` - HireInvoice - Document is an invoice for the hiring of human resources or renting goods or equipment.\n*`MSIN` - MeteredServiceInvoice - Document is an invoice claiming payment for the supply of metered services, for example gas or electricity supplied to a fixed meter.\n*`PUOR` - PurchaseOrder - Document is a purchase order.\n*`SBIN` - SelfBilledInvoice - Document is an invoice issued by the debtor.\n*`SOAC` - StatementOfAccount - Document is a statement of the transactions posted to the debtor's account at the supplier.\n*`TSUT` - TradeServicesUtilityTransaction - Document is a transaction identifier as assigned by the Trade Services Utility.\n*`VCHR` - Voucher - Document is an electronic payment document.\n",
              "x-MXComponent" : "DocumentType6Code",
              "enum" : [ "AROI", "BOLD", "CINV", "CMCN", "CNFA", "CREN", "DEBN", "DISP", "DNFA", "HIRI", "MSIN", "PUOR", "SBIN", "SOAC", "TSUT", "VCHR" ]
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Proprietary identification of the type of the remittance document.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "ReferredDocumentType4" : {
        "required" : [ "code_or_proprietary" ],
        "type" : "object",
        "properties" : {
          "code_or_proprietary" : {
            "$ref" : "#/components/schemas/ReferredDocumentType3Choice"
          },
          "issuer" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of the issuer of the reference document type.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the type of the document referred in the remittance information.",
        "x-MXComponent" : "ReferredDocumentType4"
      },
      "RegulatoryAuthority2" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the entity requiring the regulatory reporting information.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Country of the entity that requires the regulatory reporting information.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          }
        },
        "additionalProperties" : false,
        "description" : "Entity requiring the regulatory reporting information.",
        "x-MXComponent" : "RegulatoryAuthority2"
      },
      "RegulatoryReporting9" : {
        "type" : "object",
        "properties" : {
          "debit_credit_reporting_indicator" : {
            "type" : "string",
            "description" : "Identifies whether the regulatory reporting information applies to the debit side, to the credit side or to both debit and credit sides of the transaction.\n\nUsage Rule: only Debit needs to be reported.\n\nIdentifies whether the regulatory reporting information applies to the debit side, to the credit side or to both debit and credit sides of the transaction.\n\nCode Name Definition:\n*`DEBT` - Debit - Regulatory information applies to the debit side.\n",
            "x-MXComponent" : "RegulatoryReportingType2Code",
            "enum" : [ "DEBT" ]
          },
          "authority" : {
            "$ref" : "#/components/schemas/RegulatoryAuthority2"
          },
          "details" : {
            "type" : "array",
            "description" : "Set of elements used to provide details on the regulatory reporting information.",
            "items" : {
              "$ref" : "#/components/schemas/StructuredRegulatoryReporting4"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Information needed due to regulatory and/or statutory requirements.",
        "x-MXComponent" : "RegulatoryReporting9"
      },
      "RemittanceAmount2" : {
        "type" : "object",
        "properties" : {
          "due_payable_amount" : {
            "$ref" : "#/components/schemas/RemittanceAmount2_due_payable_amount"
          },
          "discount_applied_amount" : {
            "type" : "array",
            "description" : "Amount specified for the referred document is the amount of discount to be applied to the amount due and payable to the creditor.",
            "items" : {
              "$ref" : "#/components/schemas/DiscountAmountAndType1"
            }
          },
          "credit_note_amount" : {
            "$ref" : "#/components/schemas/RemittanceAmount2_credit_note_amount"
          },
          "tax_amount" : {
            "type" : "array",
            "description" : "Quantity of cash resulting from the calculation of the tax.",
            "items" : {
              "$ref" : "#/components/schemas/TaxAmountAndType1"
            }
          },
          "adjustment_amount_and_reason" : {
            "type" : "array",
            "description" : "Specifies detailed information on the amount and reason of the document adjustment.",
            "items" : {
              "$ref" : "#/components/schemas/DocumentAdjustment1"
            }
          },
          "remitted_amount" : {
            "$ref" : "#/components/schemas/Garnishment3_remitted_amount"
          }
        },
        "additionalProperties" : false,
        "description" : "Nature of the amount and currency on a document referred to in the remittance section, typically either the original amount due/payable or the amount actually remitted for the referenced document.",
        "x-MXComponent" : "RemittanceAmount2"
      },
      "RemittanceAmount3" : {
        "type" : "object",
        "properties" : {
          "due_payable_amount" : {
            "$ref" : "#/components/schemas/RemittanceAmount2_due_payable_amount"
          },
          "discount_applied_amount" : {
            "type" : "array",
            "description" : "Amount of discount to be applied to the amount due and payable to the creditor.",
            "items" : {
              "$ref" : "#/components/schemas/DiscountAmountAndType1"
            }
          },
          "credit_note_amount" : {
            "$ref" : "#/components/schemas/RemittanceAmount3_credit_note_amount"
          },
          "tax_amount" : {
            "type" : "array",
            "description" : "Amount of the tax.",
            "items" : {
              "$ref" : "#/components/schemas/TaxAmountAndType1"
            }
          },
          "adjustment_amount_and_reason" : {
            "type" : "array",
            "description" : "Specifies detailed information on the amount and reason of the adjustment.",
            "items" : {
              "$ref" : "#/components/schemas/DocumentAdjustment1"
            }
          },
          "remitted_amount" : {
            "$ref" : "#/components/schemas/RemittanceAmount3_remitted_amount"
          }
        },
        "additionalProperties" : false,
        "description" : "Nature of the amount and currency on a document referred to in the remittance section, typically either the original amount due/payable or the amount actually remitted for the referenced document.",
        "x-MXComponent" : "RemittanceAmount3"
      },
      "RemittanceInformation25" : {
        "type" : "object",
        "properties" : {
          "unstructured" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system, in an unstructured form.\n\nNEFT: N02 / N03 / N06.7495 Remittance information\nOptional, 6*35x\n\nNG-RTGS: Remittance Information 140 characters up to 4 can be used Sender to Receiver Information\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "structured" : {
            "type" : "array",
            "description" : "Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system, in a structured form.",
            "items" : {
              "$ref" : "#/components/schemas/StructuredRemittanceInformation21"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system.",
        "x-MXComponent" : "RemittanceInformation25"
      },
      "RemittanceLocation12" : {
        "type" : "object",
        "properties" : {
          "remittance_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the initiating party, to unambiguously identify the remittance information sent separately from the payment instruction, such as a remittance advice.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "remittance_location_details" : {
            "type" : "array",
            "description" : "Set of elements used to provide information on the location and/or delivery of the remittance information.",
            "items" : {
              "$ref" : "#/components/schemas/RemittanceLocationData4"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Provides information on the remittance advice.",
        "x-MXComponent" : "RemittanceLocation12"
      },
      "RemittanceLocation7" : {
        "type" : "object",
        "properties" : {
          "remittance_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the initiating party, to unambiguously identify the remittance information sent separately from the payment instruction, such as a remittance advice.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "remittance_location_details" : {
            "type" : "array",
            "description" : "Set of elements used to provide information on the location and/or delivery of the remittance information.",
            "items" : {
              "$ref" : "#/components/schemas/RemittanceLocationData1"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Provides information on the remittance advice.",
        "x-MXComponent" : "RemittanceLocation7"
      },
      "RemittanceLocationData1" : {
        "required" : [ "method" ],
        "type" : "object",
        "properties" : {
          "method" : {
            "type" : "string",
            "description" : "Method used to deliver the remittance advice information.\n\nSpecifies the method used to deliver the remittance advice information.\n\nCode Name Definition:\n*`EDIC` - ElectronicDataInterchange - Remittance advice information must be sent through Electronic Data Interchange (EDI).\n*`EMAL` - EMail - Remittance advice information must be sent through e-mail.\n*`FAXI` - Fax - Remittance advice information must be faxed.\n*`POST` - Post - Remittance advice information must be sent through postal services.\n*`SMSM` - SMS - Remittance advice information must be sent through by phone as a short message service (SMS).\n*`URID` - UniformResourceIdentifier - Remittance advice information needs to be sent to a Uniform Resource Identifier (URI). URI is a compact string of characters that uniquely identify an abstract or physical resource. URI's are the super-set of identifiers, such as URLs, email addresses, ftp sites, etc, and as such, provide the syntax for all of the identification schemes.\n",
            "x-MXComponent" : "RemittanceLocationMethod2Code",
            "enum" : [ "EDIC", "EMAL", "FAXI", "POST", "SMSM", "URID" ]
          },
          "electronic_address" : {
            "maxLength" : 2048,
            "minLength" : 1,
            "type" : "string",
            "description" : "Electronic address to which an agent is to send the remittance information.\n\nBased on datatype Max2048Text: Specifies a character string with a maximum length of 2048 characters.\n",
            "x-MXComponent" : "Max2048Text"
          },
          "postal_address" : {
            "$ref" : "#/components/schemas/NameAndAddress16"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides additional details on the remittance advice.",
        "x-MXComponent" : "RemittanceLocationData1"
      },
      "RemittanceLocationData4" : {
        "required" : [ "method" ],
        "type" : "object",
        "properties" : {
          "method" : {
            "type" : "string",
            "description" : "Method used to deliver the remittance advice information.\n\nSpecifies the method used to deliver the remittance advice information.\n\nCode Name Definition:\n*`EDIC` - ElectronicDataInterchange - Remittance advice information must be sent through Electronic Data Interchange (EDI).\n*`EMAL` - EMail - Remittance advice information must be sent through e-mail.\n*`FAXI` - Fax - Remittance advice information must be faxed.\n*`POST` - Post - Remittance advice information must be sent through postal services.\n*`SMSM` - SMS - Remittance advice information must be sent through by phone as a short message service (SMS).\n*`URID` - UniformResourceIdentifier - Remittance advice information needs to be sent to a Uniform Resource Identifier (URI). URI is a compact string of characters that uniquely identify an abstract or physical resource. URI's are the super-set of identifiers, such as URLs, email addresses, ftp sites, etc, and as such, provide the syntax for all of the identification schemes.\n",
            "x-MXComponent" : "RemittanceLocationMethod2Code",
            "enum" : [ "EDIC", "EMAL", "FAXI", "POST", "SMSM", "URID" ]
          },
          "electronic_address" : {
            "maxLength" : 2048,
            "minLength" : 1,
            "type" : "string",
            "description" : "Electronic address to which an agent is to send the remittance information.\n\nMay be used to specify email address to advise payment (allows for up 10 occurrences)\nFor multiple addreess (CC arrangement)  use \"; \" as a delimiter.\n\nBased on datatype Max2048Text: Specifies a character string with a maximum length of 2048 characters.\n",
            "x-MXComponent" : "Max2048Text"
          },
          "postal_address" : {
            "$ref" : "#/components/schemas/NameAndAddress21"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides additional details on the remittance advice.",
        "x-MXComponent" : "RemittanceLocationData4"
      },
      "RestrictedJVINA1A2CreditTransferTransaction34" : {
        "required" : [ "creditor", "end_to_end_identification", "instructed_amount" ],
        "type" : "object",
        "properties" : {
          "instruction_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification as assigned by an instructing party for an instructed party to unambiguously identify the instruction.\n\nUsage: The instruction identification is a point to point reference that can be used between the instructing party and the instructed party to refer to the individual instruction. It can be included in several APIs related to the instruction.\n\nNEFT: N06.2020 Transaction Reference Number\nMandatory, 16x\n\nNG-RTGS: May be used for supplementary identification, such as the legacy transaction reference number (R41.2020).\nMax35Text\n\nCGI-MP_InstructionIdentificationRule\nIf present, Id to be returned only to ordering party in account statement reporting\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "end_to_end_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification assigned by the initiating party to unambiguously identify the transaction. This identification is passed on, unchanged, throughout the entire end-to-end chain.\n\nUsage: The end-to-end identification can be used for reconciliation or to link tasks relating to the transaction. It can be included in several APIs related to the transaction.\n\nEnd To End Identification  \nClient Reference (currently not handled by NG-RTGS, advocacy issue to be taken with up with RBI).\n\nECS/NECS: 22.10 User Credit Reference\n13-character user defined Reference Number such as Ledger Folio number, or Share / Debenture Certificate Number or any other unique identification number given by the User for the individual beneficiaries.\n\nNACH: 23.20 Transaction Reference\nMandatory, 30 character user defined Reference Number such as Ledger Folio number, or Share / Debenture Cert. No. or Job Card No. or any other unique identification number given by the User for the individual beneficiaries.\n\nNEFT: Aligned with NG-RTGS. Currently being utilised to support migration from SFMS to ISO 20022.\nFollows the 16 digits UTR pattern of the former RTGS system, identified with the 6 character codeword prefix “/XUTR/”.\n\nNG-RTGS: Currently being utilised to support migration from SFMS to ISO 20022.\nFollows the 16 digits UTR pattern of the former RTGS system, identified with the 6 character codeword prefix “/XUTR/”.\n\nCGI-MP_EndToEndIdentificationRule\nPayment Reference - goes with payment from debtor to creditor and travels through clearing system\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "uetr" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Universally unique identifier to provide an end-to-end reference of a payment transaction.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "instruction_priority" : {
            "type" : "string",
            "description" : "Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the instruction.\n\nNG-RTGS: \nHIGH = Priority Level is high.\nNORM = Priority Level is normal\nDefault is HIGH.\n\nSpecifies the priority level of an event.\n\nCode Name Definition:\n*`HIGH` - High - Priority level is high.\n*`NORM` - Normal - Priority level is normal.\n",
            "x-MXComponent" : "Priority2Code",
            "enum" : [ "HIGH", "NORM" ]
          },
          "service_level" : {
            "type" : "string",
            "description" : "Agreement under which or rules under which the transaction should be processed.\n\nValue: ExternalServiceLevel1Code\n\nRule: Mandatory only in case of credit transfer (payment method = TRF).\nNot used for Cheques (payment method = CHK)\n\nINTranSrvclvloptionalCHQ_L2\nRule: For each Customer Credit Transfer Initiation API, if at least one occurrence of Credit Transfer [TRF] is (are) present, then Service Level must be present.\n\nSubset of service level codes as used in India.\n\nCode Name Definition:\n*`BKTR` - BookTransfer - Payment through internal book transfer.\n*`NURG` - NonUrgentPayment - Payment must be executed as a non-urgent transaction, which is typically identified as an ACH or low value transaction, such as NEFT / NACH / ECS / NECS.\n*`URGP` - UrgentPayment - Payment must be executed as an urgent transaction cleared through a real-time gross settlement system, which is typically identified as a wire or high value transaction, such as NG-RTGS.\n",
            "x-MXComponent" : "IndiaServiceLevel1Code",
            "enum" : [ "BKTR", "NURG", "URGP" ]
          },
          "local_instrument" : {
            "maxLength" : 4,
            "minLength" : 3,
            "type" : "string",
            "description" : "User community specific instrument.\n\nUsage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level.\n\nINTranLclInstrm-mandatoryCHQ_L2\nRule: If Payment Method is Cheque (CHK), then Local Instrument must be present.\n\nLocal Instrument Code:\nECS = ECS/NECS\nNEFT = NEFT\nNACH = NACH\nRTGS = NG-RTGS\nCII = Cheque Issuance\n\nSubset of local instrument codes as used in India.\n\nCode Name Definition:\n*`CII` - CII - Cheque Issuance.\n*`ECS` - ECS - Electronic Clearing System (ECS) or NECS National Electronic Clearing Service.\n*`NACH` - NACH - National Automated Clearing House.\n*`NEFT` - NEFT - National Electronic Funds Transfer.\n*`RTGS` - RTGS - Real Time Gross Settlement System.\n",
            "x-MXComponent" : "IndiaLocalInstrument1Code",
            "enum" : [ "CII", "ECS", "NACH", "NEFT", "RTGS" ]
          },
          "category_purpose" : {
            "type" : "string",
            "description" : "Specifies the high level purpose of the instruction based on a set of pre-defined categories.\nUsage: This is used by the initiating party to provide information concerning the processing of the payment. It is likely to trigger special processing by any of the agents involved in the payment chain.\n\nRule: Mandatory if Local Instrument is RTGS\n\n(Default 'CASH')\n\nCASH = CashManagementTransfer\n\nCORT = TradeSettlementPayment\n\nDIVI = Dividend\n\nGOVT = GovernmentPayment\n\nHEDG = Hedging\n\nINTC = IntraCompanyPayment\n\nINTE = Interest\n\nLOAN = Loan\n\nPENS = PensionPayment\n\nSALA = SalaryPayment\n\nSECU = Securities\n\nSSBE = SocialSecurityBenefit\n\nSUPP = SupplierPayment\n\nTAXS = TaxPayment\n\nTRAD = Trade\n\nTREA = TreasuryPayment\n\nVATX = ValueAddedTaxPayment\n\nWHLD = WithHolding Tax\n\nSubset of category purpose codes as used in India.\n\nCode Name Definition:\n*`CASH` - CashManagementTransfer - Transaction is a general cash management instruction.\n*`CORT` - TradeSettlementPayment - Transaction is related to settlement of a trade, eg a foreign exchange deal or a securities transaction.\n*`DIVI` - Dividend - Transaction is the payment of dividends. \n*`GOVT` - GovernmentPayment - Transaction is a payment to or from a government department.\n*`HEDG` - Hedging - Transaction is related to the payment of a hedging operation.\n*`INTC` - IntraCompanyPayment - Transaction is an intra-company payment, ie, a payment between two companies belonging to the same group.\n*`INTE` - Interest - Transaction is the payment of interest.\n*`LOAN` - Loan - Transaction is related to the transfer of a loan to a borrower.\n*`PENS` - PensionPayment - Transaction is the payment of pension.\n*`SALA` - SalaryPayment - Transaction is the payment of salaries.\n*`SECU` - Securities - Transaction is the payment of securities.\n*`SSBE` - SocialSecurityBenefit - Transaction is a social security benefit, ie payment made by a government to support individuals.\n*`SUPP` - SupplierPayment - Transaction is related to a payment to a supplier.\n*`TAXS` - TaxPayment - Transaction is the payment of taxes.\n*`TRAD` - Trade - Transaction is related to the payment of a trade finance transaction.\n*`TREA` - TreasuryPayment - Transaction is related to treasury operations.  E.g. financial contract settlement.\n*`VATX` - ValueAddedTaxPayment - Transaction is the payment of value added tax.\n*`WHLD` - WithHoldingTax - Transaction is the payment of withholding tax.\n",
            "x-MXComponent" : "IndiaCategoryPurpose1Code",
            "enum" : [ "CASH", "CORT", "DIVI", "GOVT", "HEDG", "INTC", "INTE", "LOAN", "PENS", "SALA", "SECU", "SSBE", "SUPP", "TAXS", "TRAD", "TREA", "VATX", "WHLD" ]
          },
          "instructed_amount" : {
            "$ref" : "#/components/schemas/RestrictedJVINA1A2CreditTransferTransaction34_instructed_amount"
          },
          "exchange_rate_information" : {
            "$ref" : "#/components/schemas/ExchangeRate1"
          },
          "charge_bearer" : {
            "type" : "string",
            "description" : "Specifies which party/parties will bear the charges associated with the processing of the payment transaction.\n\nRule: If Local Instrument is RTGS, Charge Bearer is Mandatory.\n\nFor each Customer Credit Transfer Initiation, Charge Bearer is mutually exclusive on Payment Information level or Transaction level and all may be absent.\n\nSpecifies which party(ies) will pay charges due for processing of the instruction.\n\nCode Name Definition:\n*`CRED` - BorneByCreditor - All transaction charges are to be borne by the creditor.\n*`DEBT` - BorneByDebtor - All transaction charges are to be borne by the debtor.\n*`SHAR` - Shared - In a credit transfer context, means that transaction charges on the sender side are to be borne by the debtor, transaction charges on the receiver side are to be borne by the creditor. In a direct debit context, means that transaction charges on the sender side are to be borne by the creditor, transaction charges on the receiver side are to be borne by the debtor.\n*`SLEV` - FollowingServiceLevel - Charges are to be applied following the rules agreed in the service level and/or scheme.\n",
            "x-MXComponent" : "ChargeBearerType1Code",
            "enum" : [ "CRED", "DEBT", "SHAR", "SLEV" ]
          },
          "cheque_instruction" : {
            "$ref" : "#/components/schemas/RestrictedJVINCheque11"
          },
          "ultimate_debtor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "intermediary_agent1" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification13"
          },
          "intermediary_agent1_account" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unambiguous identification of the account of the intermediary agent 1 at its servicing agent in the payment chain.\n\nCorrespondent Bank Account No. (IntermediaryAgent1 or 2) for Foreign Remittance\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "intermediary_agent2" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification13"
          },
          "intermediary_agent2_account" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unambiguous identification of the account of the intermediary agent 2 at its servicing agent in the payment chain.\n\nCorrespondent Bank Account No. (IntermediaryAgent1 or 2) for Foreign Remittance\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "creditor_agent" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification16"
          },
          "creditor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "creditor_account" : {
            "$ref" : "#/components/schemas/CashAccount214"
          },
          "ultimate_creditor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "instruction_for_creditor_agent" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "Further information related to the processing of the payment instruction, provided by the initiating party, and intended for the creditor agent.\n\nNG-RTGS: May be up to two occurrences.\n",
            "items" : {
              "$ref" : "#/components/schemas/InstructionForCreditorAgent1"
            }
          },
          "instruction_for_debtor_agent" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Further information related to the processing of the payment instruction, that may need to be acted upon by the debtor agent, depending on agreement between debtor and the debtor agent.\n\nRule: For an accompanying FileAct file, this is indicated with the codeword 'FACT/' followed by the file name. Together the FileAct codeword and file name must not exceed 65 characters and should be structured as:\nFACT/BIC/TransactionID/DocumentType/DocumentRefNo/Date.FileTypeExtension\nE.g.  FACT/IBKL/DSGGGH00099/A1/AABBCCD/20160502.PDF\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "purpose" : {
            "$ref" : "#/components/schemas/Purpose2Choice"
          },
          "regulatory_reporting" : {
            "maxItems" : 10,
            "type" : "array",
            "description" : "Information needed due to regulatory and statutory requirements.\n\nTransactions involving foreign exchange are subject to FEMA (Foreign Exchange Management Act ) regulations and are required to be reported.\n",
            "items" : {
              "$ref" : "#/components/schemas/RegulatoryReporting9"
            }
          },
          "tax" : {
            "$ref" : "#/components/schemas/TaxInformation8"
          },
          "related_remittance_information" : {
            "maxItems" : 10,
            "type" : "array",
            "description" : "Provides information related to the handling of the remittance information by any of the agents in the transaction processing chain.",
            "items" : {
              "$ref" : "#/components/schemas/RemittanceLocation7"
            }
          },
          "remittance_information" : {
            "$ref" : "#/components/schemas/RemittanceInformation25"
          },
          "foreign_remittance_data" : {
            "$ref" : "#/components/schemas/ForeignRemittance1"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides further details specific to the individual transaction(s) included in the API.",
        "x-MXComponent" : "RestrictedJVINA1A2CreditTransferTransaction34"
      },
      "RestrictedJVINA1A2CustomerPaymentStatusReportData1" : {
        "required" : [ "creation_date_time", "customer_payment_status_report_identification", "original_batch_payment_initiation_identification", "original_batch_reference", "original_creation_date_time", "report_reference" ],
        "type" : "object",
        "properties" : {
          "report_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Unique technical identification of the customer payment status report as defined by the customer's server. \n\nNote: The customerdoes not use this field when first submitting the customer payment status report. but it should be used when subsequently retrieving the customer payment status report.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "customer_payment_status_report_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the instructing party, and sent to the next party in the chain to unambiguously identify the Customer Payment Status Report.\nUsage: The instructing party has to make sure that CustomerPaymentStatusReportIdentification is unique per instructed party for a pre-agreed period.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the API was created.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "initiating_party_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and which is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "initiating_party_bic" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Business identification code of the organisation.\n\n\n\nBased on datatype AnyBICDec2014Identifier: Code allocated to a financial or non-financial institution by the ISO 9362 Registration Authority, as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "AnyBICDec2014Identifier"
          },
          "initiating_party_lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identification as an alternate identification for a party.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "initiating_party_other_identification" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "Unique identification of an organisation, as assigned by an institution, using an identification scheme.\n\n\n",
            "items" : {
              "$ref" : "#/components/schemas/GenericOrganisationIdentification5"
            }
          },
          "original_batch_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Original, unique technical identification of the batch payment initiation as originally defined by the bank's server. \n\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "original_batch_payment_initiation_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the original instructing party, to unambiguously identify the original Batch Payment Initiation.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the original API was created.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "original_number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the original API.\n\nCGI-MP_OriginalNumberOfTransactionsRule\nIf supplied by originator in the initiation API, will be echoed back.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "original_control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the original API, irrespective of currencies.\n\nCGI-MP_OriginalControlSumRule: If supplied by originator in the initiation API, will be echoed back.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "group_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the status of a group of transactions.\n\nCGI-MP_GroupStatusRule: Required if reporting on a group level or combined group and transaction levels. Not Used if reporting at a transaction level only.\n\nACTC = Group only\nACCP = Group only and/or Consolidated status\nACSP = Group only and/or Consolidated status\nACWC = Group only and/or Consolidated status\nPART = Group  only and/or Consolidated status\nPDNG = Group  only and/or Consolidated status\nRJCT = Group  only and/or Consolidated status\nACSC = Accepted Settlement Completed\nRCVD = Received\n\nRule: Refer to the ISO 20022 External Code List \"ExternalPaymentGroupStatus1Code\" for the complete list.\n\nSpecifies the status of a group of payment instructions, as published in an external payment group status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentGroupStatus1Code"
          },
          "status_reason_information_code" : {
            "type" : "array",
            "description" : "Provides detailed information on the status reason.\n\nNG-RTGS: Repeats only once\n\nCGI-MP_CodeRule\nCode required from External Code List.  If a bank's status code is supported other than a code from the External Code List, then the bank status code is shown under <AddtlInf>.\n\nRule: Refer to the ISO 20022 External Code List \"ExternalStatusReason1Code\" for the complete list.\n\nSpecifies the status reason, as published in an external status reason code list.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "items" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "ExternalStatusReason1Code"
            }
          },
          "additional_information" : {
            "type" : "array",
            "description" : "Further details on the status reason.\n\nUsage: Additional information can be used for several purposes such as the reporting of repaired information.\n\nBased on datatype Max105Text: Specifies a character string with a maximum length of 105 characters.\n",
            "items" : {
              "maxLength" : 105,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max105Text"
            }
          },
          "number_of_transactions_per_status" : {
            "type" : "array",
            "description" : "Detailed information on the number of transactions for each identical transaction status.",
            "items" : {
              "$ref" : "#/components/schemas/NumberOfTransactionsPerStatus5"
            }
          },
          "original_payment_information_and_status" : {
            "type" : "array",
            "description" : "Information concerning the original payment information, to which the status report API refers.",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINA1A2OriginalPaymentInstruction27"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\n\nUsage\nThe RestrictedJVINA1A2CustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\nThe API can be used in domestic and cross-border scenarios.\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).\n",
        "x-MXComponent" : "RestrictedJVINA1A2CustomerPaymentStatusReportData1"
      },
      "RestrictedJVINA1A2OriginalPaymentInstruction27" : {
        "required" : [ "original_payment_information_identification" ],
        "type" : "object",
        "properties" : {
          "original_payment_information_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the original sending party, to unambiguously identify the original payment information group.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "payment_information_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the status of the payment information group.\n\nCGI-MP_PaymentInformationStatusRule\nRequired if reporting on a payment level or combined payment and transaction levels. Not Used if reporting at a transaction level only.\n\n\nACCP: Accepted technical, syntactical and profile; passed to back office\n\nACSP:  Accepted back office; passed to clearing\n\nACWC:  Accepted with change\n\nPART:  Partially accepted and rejected \nPDNG:  Pending further processing\n\nRJCT:  Rejection\n\nRule: Refer to the ISO 20022 External Code List \"ExternalPaymentGroupStatus1Code\" for the complete list.\n\nSpecifies the status of a group of payment instructions, as published in an external payment group status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentGroupStatus1Code"
          },
          "status_reason_information_code" : {
            "type" : "array",
            "description" : "Provides detailed information on the status reason.\n\nCGI-MP_CodeRule\nCode required from External Code List.  If a bank's status reason code is supported other than a code from the External Code List, then the bank status code is shown under <AddtlInf>.\n\nRule: Refer to the ISO 20022 External Code List \"ExternalStatusReason1Code\" for the complete list.\n\nSpecifies the status reason, as published in an external status reason code list.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "items" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "ExternalStatusReason1Code"
            }
          },
          "additional_information" : {
            "type" : "array",
            "description" : "Further details on the status reason.\n\nUsage: Additional information can be used for several purposes such as the reporting of repaired information.\n\nBased on datatype Max105Text: Specifies a character string with a maximum length of 105 characters.\n",
            "items" : {
              "maxLength" : 105,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max105Text"
            }
          },
          "number_of_transactions_per_status" : {
            "type" : "array",
            "description" : "Detailed information on the number of transactions for each identical transaction status.",
            "items" : {
              "$ref" : "#/components/schemas/NumberOfTransactionsPerStatus5"
            }
          },
          "transaction_information_and_status" : {
            "type" : "array",
            "description" : "Provides information on the original transactions to which the status report API refers.\n\nCGI-MP_TransactionInformationAndStatusRule\nRequired if reporting on at the transaction level, at the payment/transaction level, or the group/payment/transaction levels. Not Used if reporting at only a group or payment level.\n",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINA1A2PaymentTransaction92"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Provides details information on the original transactions, to which the status report message refers.",
        "x-MXComponent" : "RestrictedJVINA1A2OriginalPaymentInstruction27"
      },
      "RestrictedJVINA1A2OriginalTransactionReference27" : {
        "required" : [ "amount", "creditor", "debtor", "debtor_account", "debtor_agent", "requested_execution_date" ],
        "type" : "object",
        "properties" : {
          "interbank_settlement_amount" : {
            "$ref" : "#/components/schemas/RestrictedJVINA1A2OriginalTransactionReference27_interbank_settlement_amount"
          },
          "amount" : {
            "$ref" : "#/components/schemas/AmountType4Choice"
          },
          "requested_execution_date" : {
            "$ref" : "#/components/schemas/DateAndDateTime2Choice"
          },
          "instruction_priority" : {
            "type" : "string",
            "description" : "Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the instruction.\n\nSpecifies the priority level of an event.\n\nCode Name Definition:\n*`HIGH` - High - Priority level is high.\n*`NORM` - Normal - Priority level is normal.\n",
            "x-MXComponent" : "Priority2Code",
            "enum" : [ "HIGH", "NORM" ]
          },
          "clearing_channel" : {
            "type" : "string",
            "description" : "Specifies the clearing channel to be used to process the payment instruction.\n\nSpecifies the clearing channel for the routing of the transaction, as part of the payment type identification.\n\nCode Name Definition:\n*`BOOK` - BookTransfer - Payment through internal book transfer.\n*`MPNS` - MassPaymentNetSystem - Clearing channel is a mass payment net settlement system.\n*`RTGS` - RealTimeGrossSettlementSystem - Clearing channel is a real-time gross settlement system.\n*`RTNS` - RealTimeNetSettlementSystem - Clearing channel is a real-time net settlement system.\n",
            "x-MXComponent" : "ClearingChannel2Code",
            "enum" : [ "BOOK", "MPNS", "RTGS", "RTNS" ]
          },
          "service_level" : {
            "type" : "string",
            "description" : "Agreement under which or rules under which the transaction should be processed.\n\nSubset of service level codes as used in India.\n\nCode Name Definition:\n*`BKTR` - BookTransfer - Payment through internal book transfer.\n*`NURG` - NonUrgentPayment - Payment must be executed as a non-urgent transaction, which is typically identified as an ACH or low value transaction, such as NEFT / NACH / ECS / NECS.\n*`URGP` - UrgentPayment - Payment must be executed as an urgent transaction cleared through a real-time gross settlement system, which is typically identified as a wire or high value transaction, such as NG-RTGS.\n",
            "x-MXComponent" : "IndiaServiceLevel1Code",
            "enum" : [ "BKTR", "NURG", "URGP" ]
          },
          "local_instrument" : {
            "maxLength" : 4,
            "minLength" : 3,
            "type" : "string",
            "description" : "User community specific instrument.\n\nUsage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level.\n\nLocal Instrument Code:\nECS = ECS/NECS\nNEFT = NEFT\nNACH = NACH\nRTGS = NG-RTGS\nCII = Cheque Issuance\n\nSubset of local instrument codes as used in India.\n\nCode Name Definition:\n*`CII` - CII - Cheque Issuance.\n*`ECS` - ECS - Electronic Clearing System (ECS) or NECS National Electronic Clearing Service.\n*`NACH` - NACH - National Automated Clearing House.\n*`NEFT` - NEFT - National Electronic Funds Transfer.\n*`RTGS` - RTGS - Real Time Gross Settlement System.\n",
            "x-MXComponent" : "IndiaLocalInstrument1Code",
            "enum" : [ "CII", "ECS", "NACH", "NEFT", "RTGS" ]
          },
          "sequence_type" : {
            "type" : "string",
            "description" : "Identifies the direct debit sequence, such as first, recurrent, final or one-off.\n\nSpecifies the type of the current transaction that belongs to a sequence of transactions.\n\nCode Name Definition:\n*`FNAL` - Final - Final collection of a series of direct debit instructions.\n*`FRST` - First - First collection of a series of direct debit instructions.\n*`OOFF` - OneOff - Direct debit instruction where the debtor's authorisation is used to initiate one single direct debit transaction.\n*`RCUR` - Recurring - Direct debit instruction where the debtor's authorisation is used for regular direct debit transactions initiated by the creditor.\n*`RPRE` - Represented - Collection used to re-present previously reversed or returned direct debit transactions.\n",
            "x-MXComponent" : "SequenceType3Code",
            "enum" : [ "FNAL", "FRST", "OOFF", "RCUR", "RPRE" ]
          },
          "category_purpose" : {
            "type" : "string",
            "description" : "Specifies the high level purpose of the instruction based on a set of pre-defined categories.\nUsage: This is used by the initiating party to provide information concerning the processing of the payment. It is likely to trigger special processing by any of the agents involved in the payment chain.\n\n(Default 'CASH')\nCASH = CashManagementTransfer\nCORT = TradeSettlementPayment\nDIVI = Dividend\nGOVT = GovernmentPayment\nHEDG = Hedging\nINTC = IntraCompanyPayment\nINTE = Interest\nLOAN = Loan\nPENS = PensionPayment\nSALA = SalaryPayment\nSECU = Securities\nSSBE = SocialSecurityBenefit\nSUPP = SupplierPayment\nTAXS = TaxPayment\nTRAD = Trade\nTREA = TreasuryPayment\nVATX = ValueAddedTaxPayment\nWHLD = WithHolding Tax\n\nSubset of category purpose codes as used in India.\n\nCode Name Definition:\n*`CASH` - CashManagementTransfer - Transaction is a general cash management instruction.\n*`CORT` - TradeSettlementPayment - Transaction is related to settlement of a trade, eg a foreign exchange deal or a securities transaction.\n*`DIVI` - Dividend - Transaction is the payment of dividends. \n*`GOVT` - GovernmentPayment - Transaction is a payment to or from a government department.\n*`HEDG` - Hedging - Transaction is related to the payment of a hedging operation.\n*`INTC` - IntraCompanyPayment - Transaction is an intra-company payment, ie, a payment between two companies belonging to the same group.\n*`INTE` - Interest - Transaction is the payment of interest.\n*`LOAN` - Loan - Transaction is related to the transfer of a loan to a borrower.\n*`PENS` - PensionPayment - Transaction is the payment of pension.\n*`SALA` - SalaryPayment - Transaction is the payment of salaries.\n*`SECU` - Securities - Transaction is the payment of securities.\n*`SSBE` - SocialSecurityBenefit - Transaction is a social security benefit, ie payment made by a government to support individuals.\n*`SUPP` - SupplierPayment - Transaction is related to a payment to a supplier.\n*`TAXS` - TaxPayment - Transaction is the payment of taxes.\n*`TRAD` - Trade - Transaction is related to the payment of a trade finance transaction.\n*`TREA` - TreasuryPayment - Transaction is related to treasury operations.  E.g. financial contract settlement.\n*`VATX` - ValueAddedTaxPayment - Transaction is the payment of value added tax.\n*`WHLD` - WithHoldingTax - Transaction is the payment of withholding tax.\n",
            "x-MXComponent" : "IndiaCategoryPurpose1Code",
            "enum" : [ "CASH", "CORT", "DIVI", "GOVT", "HEDG", "INTC", "INTE", "LOAN", "PENS", "SALA", "SECU", "SSBE", "SUPP", "TAXS", "TRAD", "TREA", "VATX", "WHLD" ]
          },
          "remittance_information" : {
            "$ref" : "#/components/schemas/RemittanceInformation25"
          },
          "debtor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "debtor_account" : {
            "maxLength" : 34,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unambiguous identification of the account of the debtor to which a debit entry will be made as a result of the transaction.\n\nBased on datatype Max34Text: Specifies a character string with a maximum length of 34 characters.\n",
            "x-MXComponent" : "Max34Text"
          },
          "debtor_agent" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification13"
          },
          "creditor_agent" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification13"
          },
          "creditor" : {
            "$ref" : "#/components/schemas/Party60Choice"
          },
          "creditor_account" : {
            "$ref" : "#/components/schemas/CashAccount214"
          },
          "ultimate_creditor" : {
            "$ref" : "#/components/schemas/Party60Choice"
          },
          "purpose" : {
            "$ref" : "#/components/schemas/Purpose2Choice"
          }
        },
        "additionalProperties" : false,
        "description" : "Key elements used to refer the original transaction.",
        "x-MXComponent" : "RestrictedJVINA1A2OriginalTransactionReference27"
      },
      "RestrictedJVINA1A2PaymentInitiationData1" : {
        "required" : [ "batch_payment_initiation_identification", "batch_payment_reference", "creation_date_time", "initiating_party", "number_of_transactions", "payment_information" ],
        "type" : "object",
        "properties" : {
          "batch_payment_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Unique technical identification of the batch payment initiation as defined by the bank's server. \n\nNote: The corporate does not use this field when first submitting the batch payment initiation. but it should be used when subsequently retrieving the batch payment initiation.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "batch_payment_initiation_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the instructing party, and sent to the next party in the chain to unambiguously identify the batch payment initiation.\nUsage: The instructing party has to make sure that BatchPaymentInitiationIdentification is unique per instructed party for a pre-agreed period.\n\nECS/NECS: 11.4 User Credit Reference\n14-character user defined reference number for the entire transaction.\n\nNACH: 12.16 User Reference\nMandatory, 18 character user defined reference number for the entire transaction (Alpha Numeric)\n\nNEFT: N06.2020 Transaction Reference Number\nUniquely identifies the message.\nMandatory, 16x\n\nNG-RTGS: 22-character number recommended:\nXXXX- Sender IFSC [4]\nYYYYMMDD - Creation Date Reverse [8]\nX – Channel [1]\nnnnnnnnnn- Sequence Number [9]\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the API was created.\n\nNEFT: N06.3535 Batch Time\nIf specified it must be either 1030 or 1200 or 1600.\nOptional, 4!n\n\nNG-RTGS: ISODateTime. Time up to seconds only.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "authorisation" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "User identification or any user key to be used to check whether the initiating party is allowed to initiate transactions from the account specified in the API.\n\nUsage: The content is not of a technical nature, but reflects the organisational structure at the initiating side.\nThe authorisation element can typically be used in relay scenarios, payment initiations, payment returns or payment reversals that are initiated on behalf of a party different from the initiating party.\n",
            "items" : {
              "$ref" : "#/components/schemas/Authorisation1Choice"
            }
          },
          "number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the API.\n\nNEFT: N06.1106 Total number of loops in the message\nNumber of transactions in message.\nMandatory, 5n\n\nNG-RTGS: Number of individual transactions contained in the message.\nRTGS limited to 1 transaction.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the message, irrespective of currencies.\n\nSame as per clearing requirements.\nNEFT: N06.4063 Sum of Amounts\nMandatory, 19d\n\nNACH: 12.19 Total items in File\nMandatory, 9 numeric\n \nCGI-MP_ControlSumRule: It is a client's option to include. If included, value will be checked. The sum is the hash total of values in Instructed Amount or Equivalent Amount.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "initiating_party" : {
            "$ref" : "#/components/schemas/PartyIdentification307"
          },
          "payment_information" : {
            "type" : "array",
            "description" : "Set of characteristics that applies to the debit side of the payment transactions included in the credit transfer initiation.\n\nRule: INCreditorAccountRulePayMethod: For each Payment Information, at least one occurrence of Creditor Account must be present when at least one occurrence of Credit Transfer [TRF] is present\n\nRule: INCreditorAgentRulePayMethod: For each Payment Information, at least one occurrence of Creditor Agent must be present when at least one occurrence of Credit Transfer [TRF] is present\n",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINA1A2PaymentInstruction1"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\n\nUsage\nRestrictedJVINA1A2PaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\nThe API is used to exchange:\n- One or more instances of a credit transfer initiation;\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\n\nThe API can be used in the following scenarios:\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\n- The API can also be used by an initiating party that has authority to send the API on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\n- The API can be used in domestic and cross-border scenarios.\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.\n",
        "x-MXComponent" : "RestrictedJVINA1A2PaymentInitiationData1"
      },
      "RestrictedJVINA1A2PaymentInstruction1" : {
        "required" : [ "credit_transfer_transaction_information", "debtor", "debtor_account", "debtor_agent", "payment_information_identification", "payment_method", "requested_execution_date" ],
        "type" : "object",
        "properties" : {
          "payment_information_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by a sending party, to unambiguously identify the payment information group within the API.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "payment_method" : {
            "type" : "string",
            "description" : "Specifies the means of payment that will be used to move the amount of money.\n\nRule: For each Customer Credit Transfer Initiation API, if at least one occurrence of the following element(s) Credit Transfer [TRF] is (are) present, then Service Level must be present.\n\nSpecifies the transfer method that will be used to transfer the cash.\n\nCode Name Definition:\n*`CHK` - Cheque - Written order to a bank to pay a certain amount of money from one person to another person.\n*`TRF` - CreditTransfer - Transfer of an amount of money in the books of the account servicer.\n",
            "x-MXComponent" : "PaymentMethod7Code",
            "enum" : [ "CHK", "TRF" ]
          },
          "batch_booking" : {
            "type" : "boolean",
            "description" : "Identifies whether a single entry per individual transaction or a batch entry for the sum of the amounts of all transactions within the group of a API is requested.\nUsage: Batch booking is used to request and not order a possible batch booking.\n\nBased on datatype BatchBookingIndicator: Identifies whether the sending party requests a single debit or credit entry per individual transaction or a batch entry for the sum of the amounts of all transactions.\n",
            "x-MXComponent" : "BatchBookingIndicator"
          },
          "number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the payment information group.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the group, irrespective of currencies.\n\nCGI-MP_ControlSumRule\nIt is a client's option to include. If included, value will be checked. The sum is the hash total of values in Instructed Amount or Equivalent Amount.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "instruction_priority" : {
            "type" : "string",
            "description" : "Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the instruction.\n\nNG-RTGS: \nHIGH = Priority Level is high.\nNORM = Priority Level is normal\nDefault is HIGH.\n\nSpecifies the priority level of an event.\n\nCode Name Definition:\n*`HIGH` - High - Priority level is high.\n*`NORM` - Normal - Priority level is normal.\n",
            "x-MXComponent" : "Priority2Code",
            "enum" : [ "HIGH", "NORM" ]
          },
          "service_level" : {
            "type" : "string",
            "description" : "Agreement under which or rules under which the transaction should be processed.\n\nValue: ExternalServiceLevel1Code\n\nRule: Mandatory only in case of credit transfer (payment method = TRF).\nNot used for Cheques (payment method = CHK)\n\nINTranSrvclvloptionalCHQ_L1\nRule: For each Customer Credit Transfer Initiation API, if at least one occurrence of Credit Transfer [TRF] is (are) present, then Service Level must be present.\n\nSubset of service level codes as used in India.\n\nCode Name Definition:\n*`BKTR` - BookTransfer - Payment through internal book transfer.\n*`NURG` - NonUrgentPayment - Payment must be executed as a non-urgent transaction, which is typically identified as an ACH or low value transaction, such as NEFT / NACH / ECS / NECS.\n*`URGP` - UrgentPayment - Payment must be executed as an urgent transaction cleared through a real-time gross settlement system, which is typically identified as a wire or high value transaction, such as NG-RTGS.\n",
            "x-MXComponent" : "IndiaServiceLevel1Code",
            "enum" : [ "BKTR", "NURG", "URGP" ]
          },
          "local_instrument" : {
            "maxLength" : 4,
            "minLength" : 3,
            "type" : "string",
            "description" : "User community specific instrument.\n\nUsage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level.\n\nINTranLclInstrm-mandatoryCHQ_L1\nRule: If Payment Method is Cheque (CHK), then Local Instrument must be present.\n\nLocal Instrument Code:\nECS = ECS/NECS\nNEFT = NEFT\nNACH = NACH\nRTGS = NG-RTGS\nCII = Cheque Issuance\n\nSubset of local instrument codes as used in India.\n\nCode Name Definition:\n*`CII` - CII - Cheque Issuance.\n*`ECS` - ECS - Electronic Clearing System (ECS) or NECS National Electronic Clearing Service.\n*`NACH` - NACH - National Automated Clearing House.\n*`NEFT` - NEFT - National Electronic Funds Transfer.\n*`RTGS` - RTGS - Real Time Gross Settlement System.\n",
            "x-MXComponent" : "IndiaLocalInstrument1Code",
            "enum" : [ "CII", "ECS", "NACH", "NEFT", "RTGS" ]
          },
          "category_purpose" : {
            "type" : "string",
            "description" : "Specifies the high level purpose of the instruction based on a set of pre-defined categories.\nUsage: This is used by the initiating party to provide information concerning the processing of the payment. It is likely to trigger special processing by any of the agents involved in the payment chain.\n\nRule: Mandatory if Local Instrument is RTGS\n\n(Default 'CASH')\n\nCASH = CashManagementTransfer\n\nCORT = TradeSettlementPayment\n\nDIVI = Dividend\n\nGOVT = GovernmentPayment\n\nHEDG = Hedging\n\nINTC = IntraCompanyPayment\n\nINTE = Interest\n\nLOAN = Loan\n\nPENS = PensionPayment\n\nSALA = SalaryPayment\n\nSECU = Securities\n\nSSBE = SocialSecurityBenefit\n\nSUPP = SupplierPayment\n\nTAXS = TaxPayment\n\nTRAD = Trade\n\nTREA = TreasuryPayment\n\nVATX = ValueAddedTaxPayment\n\nWHLD = WithHolding Tax\n\nSubset of category purpose codes as used in India.\n\nCode Name Definition:\n*`CASH` - CashManagementTransfer - Transaction is a general cash management instruction.\n*`CORT` - TradeSettlementPayment - Transaction is related to settlement of a trade, eg a foreign exchange deal or a securities transaction.\n*`DIVI` - Dividend - Transaction is the payment of dividends. \n*`GOVT` - GovernmentPayment - Transaction is a payment to or from a government department.\n*`HEDG` - Hedging - Transaction is related to the payment of a hedging operation.\n*`INTC` - IntraCompanyPayment - Transaction is an intra-company payment, ie, a payment between two companies belonging to the same group.\n*`INTE` - Interest - Transaction is the payment of interest.\n*`LOAN` - Loan - Transaction is related to the transfer of a loan to a borrower.\n*`PENS` - PensionPayment - Transaction is the payment of pension.\n*`SALA` - SalaryPayment - Transaction is the payment of salaries.\n*`SECU` - Securities - Transaction is the payment of securities.\n*`SSBE` - SocialSecurityBenefit - Transaction is a social security benefit, ie payment made by a government to support individuals.\n*`SUPP` - SupplierPayment - Transaction is related to a payment to a supplier.\n*`TAXS` - TaxPayment - Transaction is the payment of taxes.\n*`TRAD` - Trade - Transaction is related to the payment of a trade finance transaction.\n*`TREA` - TreasuryPayment - Transaction is related to treasury operations.  E.g. financial contract settlement.\n*`VATX` - ValueAddedTaxPayment - Transaction is the payment of value added tax.\n*`WHLD` - WithHoldingTax - Transaction is the payment of withholding tax.\n",
            "x-MXComponent" : "IndiaCategoryPurpose1Code",
            "enum" : [ "CASH", "CORT", "DIVI", "GOVT", "HEDG", "INTC", "INTE", "LOAN", "PENS", "SALA", "SECU", "SSBE", "SUPP", "TAXS", "TRAD", "TREA", "VATX", "WHLD" ]
          },
          "requested_execution_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date at which the initiating party requests the clearing agent to process the payment. \nUsage: This is the date on which the debtor's account is to be debited. If payment by cheque, the date when the cheque must be generated by the bank.\n\nRule: If Local Instrument is ECS/NECS: : 11.11 Settlement date: 8-digit (DDMMYYYY) date on which settlement is sought to be effected\n\nNACH: : 12.11 Settlement date: 8-digit (DDMMYYYY) date on which settlement is sought to be effected\n\nNEFT: N06.3380 Value Date: Date on which settlement takes place. It can be only the current date.\nMandatory, 8!n\n\nNG-RTGS: InterbankSettlementDate\n\n\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "debtor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "debtor_account" : {
            "$ref" : "#/components/schemas/CashAccount214"
          },
          "debtor_agent" : {
            "$ref" : "#/components/schemas/RestrictedJVINBranchAndFinancialInstitutionIdentification6"
          },
          "instruction_for_debtor_agent" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Further information related to the processing of the payment instruction, that may need to be acted upon by the debtor agent, depending on agreement between debtor and the debtor agent.\n\nUsage: when present, then the instructions for the debtor agent apply for all credit transfer transaction information occurrences, present in the payment information.\n\nA note 'Refer PurpCdXchgRateInf under Supplementary Data for Debtor's Account information.' may be put in this field.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "ultimate_debtor" : {
            "$ref" : "#/components/schemas/PartyIdentification302"
          },
          "charges_account" : {
            "$ref" : "#/components/schemas/CashAccount38"
          },
          "credit_transfer_transaction_information" : {
            "type" : "array",
            "description" : "Provides information on the individual transaction(s) included in the API.\n\nPaymentTransaction\nMay be batched.  Receiving bank would rearrange depending on clearing requirements (e.g. NG-RTGS processes payments individually).\n\nExtension: Foreign Remittance Details of type ForeignRemittanceDetails can be used as extension.\n",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINA1A2CreditTransferTransaction34"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Payment Instruction data as required in India domestic payments.",
        "x-MXComponent" : "RestrictedJVINA1A2PaymentInstruction1"
      },
      "RestrictedJVINA1A2PaymentTransaction92" : {
        "required" : [ "original_end_to_end_identification" ],
        "type" : "object",
        "properties" : {
          "status_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by an instructing party for an instructed party, to unambiguously identify the reported status.\nUsage: The instructing party is the party sending the status API and not the party that sent the original instruction that is being reported on.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_instruction_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the original instructing party for the original instructed party, to unambiguously identify the original instruction.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_end_to_end_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the original initiating party, to unambiguously identify the original transaction.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_uetr" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Universally unique identifier to provide an end-to-end reference of a payment transaction.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "transaction_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the status of a transaction, in a coded form.\n\nCGI-MP_TransactionStatusRule\nRequired if reporting on a transaction level.  Not Used if reporting only at a group or payment level.\n\n\nACCP: Accepted technical, syntactical and profile; passed to back office\n\nACSP:  Accepted back office; passed to clearing\nACWC:  Accepted with change\n\nPDNG:  Pending further processing\n\nRJCT:  Rejection\n\nSpecifies the status of an individual payment instructions, as published in an external payment transaction status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentTransactionStatus1Code"
          },
          "status_reason_information_code" : {
            "type" : "array",
            "description" : "Provides detailed information on the status reason.\n\nCGI-MP_CodeRule\nCode required from External Code List.  If a bank's status reason code is supported other than a code from the External Code List, then the bank status code is shown under <AddtlInf>.\n\nSpecifies the status reason, as published in an external status reason code list.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "items" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "ExternalStatusReason1Code"
            }
          },
          "additional_information" : {
            "type" : "array",
            "description" : "Further details on the status reason.\n\nUsage: Additional information can be used for several purposes such as the reporting of repaired information.\n\n- Use Codeword “/POSTED/”  to indicate settlement on the creditor's account has been completed.\n\n- (Related to A1_A2 in SWIFT IN) A copy of MT 103 may be sent by the bank to the corporate customer using FileAct.\nUse Codeword \"/FACT/\" followed by the FileAct file name. File name must not exceed 65 characters (Excluding the codeword - FILE).\nThe filename includes the reference of MT 103 sent by the bank.\n\nE.g.  FACT/REILINBIHDFCINBIpain001-ABC20190918001-CINV-20190918.PDF. \n\n- (Related to A1_A2 in SWIFT IN) Use code /BOEN/ followed by the Bill of Entry Reference Number, after Bill of Entry (BOE) related information is knocked off on IDPMS (Import Data Processing and Monitoring System).\n\nBased on datatype Max105Text: Specifies a character string with a maximum length of 105 characters.\n",
            "items" : {
              "maxLength" : 105,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max105Text"
            }
          },
          "acceptance_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Point in time when the payment order from the initiating party meets the processing conditions of the account servicing agent. This means that the account servicing agent has received the payment order and has applied checks such as authorisation, availability of funds.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "account_servicer_reference" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique reference, as assigned by the account servicing institution, to unambiguously identify the instruction.\n\nBank to use this field to populate their unique reference of the (A1/A2) transaction processed.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "clearing_system_reference" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique reference, as assigned by a clearing system, to unambiguously identify the instruction.\n\nFor transactions sent for clearing through NG-RTGS, the Unique Transaction Reference (UTR) may be recorded here. \n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_transaction_reference" : {
            "$ref" : "#/components/schemas/RestrictedJVINA1A2OriginalTransactionReference27"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides further details on the original transactions, to which the status report message refers.",
        "x-MXComponent" : "RestrictedJVINA1A2PaymentTransaction92"
      },
      "RestrictedJVINBranchAndFinancialInstitutionIdentification6" : {
        "required" : [ "country" ],
        "type" : "object",
        "properties" : {
          "bicfi" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362 \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n\n\n\nBased on datatype BICFIDec2014Identifier: Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "BICFIDec2014Identifier"
          },
          "clearing_system_identification" : {
            "maxLength" : 5,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a clearing system Clearing System Identification Code\nINFSC = Indian Financial System Code\nMICR = MICR (Magnetic Ink Character Recognition) code\nOr using an external code ExternalClearingSystemIdentification1Code published on ISO 20022.org.\n\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nBased on datatype Max5Text: Specifies a character string with a maximum length of 5 characters.\n",
            "x-MXComponent" : "Max5Text"
          },
          "clearing_system_member_identification" : {
            "maxLength" : 11,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of a member of a clearing system.\nUSAGE RULE: NOT USED FOR INTERMEDIARY AGENTS\n\nFor IFSC, 11-character code\nFor MICR, 9-digit bank branch code\n\nIdentification of a member of a clearing system.\n\nECS/NECS: 22.2 Destination Sort Code\n9-digit MICR city-bank-branch code.\n\nNEFT: N06.5569 Beneficiary branch’s IFSC (Indian Financial System Code).\nMandatory, 4!a4!c[3!c]\n\nNACH: 23.16 Destination Bank IFSC / MICR / IIN\nMandatory, 11-character Destn Bank IFSC/MICR/IIN.\n\nNG-RTGS: For Participant, IFSC code to be keyed in. For Non- Participant (i.e. Participant who do not have IFSC code), Name and Other Identification to be keyed in.\n\nIFSC Code for financial institution is registered with RBI for NGRTGS, and consist of eleven (11) contiguous characters comprising the first four Components: INSTITUTION CODE, Fifth Character is ‘0’ and remaining 6 are Alphanumeric BRANCH CODE.\n\nBased on datatype Max11Text: Clearing System Member Identification.\n",
            "x-MXComponent" : "Max11Text"
          },
          "lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identifier of the financial institution.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "building_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the building or house.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "floor" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Floor or storey within a building.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "post_box" : {
            "maxLength" : 16,
            "minLength" : 1,
            "type" : "string",
            "description" : "Numbered box in a post office, assigned to a person or organisation, where letters are kept until called for.\n\nBased on datatype Max16Text: Specifies a character string with a maximum length of 16 characters.\n",
            "x-MXComponent" : "Max16Text"
          },
          "room" : {
            "maxLength" : 70,
            "minLength" : 1,
            "type" : "string",
            "description" : "Building room number.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "x-MXComponent" : "Max70Text"
          },
          "town_location_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specific location name within the town.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "district_name" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies a subdivision within a country sub-division.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Nation with its own government.\nFixed value IN for India.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "other_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification of an agent, as assigned by an institution, using an identification scheme.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Unique and unambiguous identification of a financial institution or a branch of a financial institution.",
        "example" : {
          "clearing_system_identification" : "INFSC",
          "clearing_system_member_identification" : "HDFC0999999",
          "country" : "IN"
        },
        "x-MXComponent" : "RestrictedJVINBranchAndFinancialInstitutionIdentification6"
      },
      "RestrictedJVINCheque11" : {
        "type" : "object",
        "properties" : {
          "cheque_type" : {
            "type" : "string",
            "description" : "Specifies the type of cheque to be issued.\n\nSpecifies the type of cheque to be issued.\n\nCode Name Definition:\n*`BCHQ` - BankCheque - Cheque drawn on the account of the debtor's financial institution, which is debited on the debtor's account when the cheque is issued.These cheques are printed by the debtor's financial institution and payment is guaranteed by the financial institution. Synonym is 'cashier's cheque'.\n*`CCHQ` - CustomerCheque - Cheque drawn on the account of the debtor, and debited on the debtor's account when the cheque is cashed. Synonym is 'corporate cheque'.\n*`DRFT` - Draft - A guaranteed bank cheque with a future value date (do not pay before], which in commercial terms is a 'negotiatable instrument': the beneficiary can receive early payment from any bank under subtraction of a discount. The ordering customer's account is debited on value date.\n",
            "x-MXComponent" : "ChequeType5Code",
            "enum" : [ "BCHQ", "CCHQ", "DRFT" ]
          },
          "cheque_number" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique and unambiguous identifier for a cheque as assigned by the agent.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "cheque_from" : {
            "$ref" : "#/components/schemas/NameAndAddress20"
          },
          "delivery_method" : {
            "type" : "string",
            "description" : "Specifies the delivery method of the cheque by the debtor's agent.\n\nSpecifies the method to be used in delivering a cheque to a party.\n\nCode Name Definition:\n*`CRCD` - CourierToCreditor - Cheque is to be sent through courier services to creditor.\n*`CRDB` - CourierToDebtor - Cheque is to be sent through courier services to debtor.\n*`CRFA` - CourierToFinalAgent - Cheque is to be sent through courier services to creditor agent.\n*`MLCD` - MailToCreditor - Cheque is to be sent through mail services to creditor.\n*`MLDB` - MailToDebtor - Cheque is to be sent through mail services to debtor.\n*`MLFA` - MailToFinalAgent - Cheque is to be sent through mail services to creditor agent.\n*`PUCD` - PickUpByCreditor - Cheque will be picked up by the creditor.\n*`PUDB` - PickUpByDebtor - Cheque will be picked up by the debtor.\n*`PUFA` - PickUpByFinalAgent - Cheque will be picked up by the creditor agent.\n*`RGCD` - RegisteredMailToCreditor - Cheque is to be sent through registered mail services to creditor.\n*`RGDB` - RegisteredMailToDebtor - Cheque is to be sent through registered mail services to debtor.\n*`RGFA` - RegisteredMailToFinalAgent - Cheque is to be sent through registered mail services to creditor agent.\n",
            "x-MXComponent" : "ChequeDelivery1Code",
            "enum" : [ "CRCD", "CRDB", "CRFA", "MLCD", "MLDB", "MLFA", "PUCD", "PUDB", "PUFA", "RGCD", "RGDB", "RGFA" ]
          },
          "deliver_to" : {
            "$ref" : "#/components/schemas/NameAndAddress20"
          },
          "instruction_priority" : {
            "type" : "string",
            "description" : "Urgency or order of importance that the originator would like the recipient of the payment instruction to apply to the processing of the payment instruction.\n\nSpecifies the priority level of an event.\n\nCode Name Definition:\n*`HIGH` - High - Priority level is high.\n*`NORM` - Normal - Priority level is normal.\n",
            "x-MXComponent" : "Priority2Code",
            "enum" : [ "HIGH", "NORM" ]
          },
          "cheque_maturity_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date when the draft becomes payable and the debtor's account is debited.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "forms_code" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies, in a coded form, the cheque layout, company logo and digitised signature to be used to print the cheque, as agreed between the initiating party and the debtor's agent.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "memo_field" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "Information that needs to be printed on a cheque, used by the payer to add miscellaneous information.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "items" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max35Text"
            }
          },
          "regional_clearing_zone" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Regional area in which the cheque can be cleared, when a country has no nation-wide cheque clearing organisation.\n\nMay be used to express 'Payable at'\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "print_location" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the print location of the cheque.\n\nMay be used to express print branch or print site (client side)\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "signature" : {
            "maxItems" : 5,
            "type" : "array",
            "description" : "Signature to be used by the cheque servicer on a specific cheque to be printed.\n\nBased on datatype Max70Text: Specifies a character string with a maximum length of 70characters.\n",
            "items" : {
              "maxLength" : 70,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max70Text"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Characteristics of a cheque instruction, such as cheque type or cheque number.",
        "x-MXComponent" : "RestrictedJVINCheque11"
      },
      "RestrictedJVINCreditTransferTransaction34" : {
        "required" : [ "creditor", "end_to_end_identification", "instructed_amount" ],
        "type" : "object",
        "properties" : {
          "instruction_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification as assigned by an instructing party for an instructed party to unambiguously identify the instruction.\n\nUsage: The instruction identification is a point to point reference that can be used between the instructing party and the instructed party to refer to the individual instruction. It can be included in several APIs related to the instruction.\n\nNEFT: N06.2020 Transaction Reference Number\nMandatory, 16x\n\nNG-RTGS: May be used for supplementary identification, such as the legacy transaction reference number (R41.2020).\nMax35Text\n\nCGI-MP_InstructionIdentificationRule\nIf present, Id to be returned only to ordering party in account statement reporting\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "end_to_end_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification assigned by the initiating party to unambiguously identify the transaction. This identification is passed on, unchanged, throughout the entire end-to-end chain.\n\nUsage: The end-to-end identification can be used for reconciliation or to link tasks relating to the transaction. It can be included in several APIs related to the transaction.\n\nEnd To End Identification  \nClient Reference (currently not handled by NG-RTGS, advocacy issue to be taken with up with RBI).\n\nECS/NECS: 22.10 User Credit Reference\n13-character user defined Reference Number such as Ledger Folio number, or Share / Debenture Certificate Number or any other unique identification number given by the User for the individual beneficiaries.\n\nNACH: 23.20 Transaction Reference\nMandatory, 30 character user defined Reference Number such as Ledger Folio number, or Share / Debenture Cert. No. or Job Card No. or any other unique identification number given by the User for the individual beneficiaries.\n\nNEFT: Aligned with NG-RTGS. Currently being utilised to support migration from SFMS to ISO 20022.\nFollows the 16 digits UTR pattern of the former RTGS system, identified with the 6 character codeword prefix “/XUTR/”.\n\nNG-RTGS: Currently being utilised to support migration from SFMS to ISO 20022.\nFollows the 16 digits UTR pattern of the former RTGS system, identified with the 6 character codeword prefix “/XUTR/”.\n\nCGI-MP_EndToEndIdentificationRule\nPayment Reference - goes with payment from debtor to creditor and travels through clearing system\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "uetr" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Universally unique identifier to provide an end-to-end reference of a payment transaction.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "instruction_priority" : {
            "type" : "string",
            "description" : "Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the instruction.\n\nNG-RTGS: \nHIGH = Priority Level is high.\nNORM = Priority Level is normal\nDefault is HIGH.\n\nSpecifies the priority level of an event.\n\nCode Name Definition:\n*`HIGH` - High - Priority level is high.\n*`NORM` - Normal - Priority level is normal.\n",
            "x-MXComponent" : "Priority2Code",
            "enum" : [ "HIGH", "NORM" ]
          },
          "service_level" : {
            "type" : "string",
            "description" : "Agreement under which or rules under which the transaction should be processed.\n\nValue: ExternalServiceLevel1Code\n\nRule: Mandatory only in case of credit transfer (payment method = TRF).\nNot used for Cheques (payment method = CHK)\n\nINTranSrvclvloptionalCHQ_L2\nRule: For each Customer Credit Transfer Initiation API, if at least one occurrence of Credit Transfer [TRF] is (are) present, then Service Level must be present.\n\nSubset of service level codes as used in India.\n\nCode Name Definition:\n*`BKTR` - BookTransfer - Payment through internal book transfer.\n*`NURG` - NonUrgentPayment - Payment must be executed as a non-urgent transaction, which is typically identified as an ACH or low value transaction, such as NEFT / NACH / ECS / NECS.\n*`URGP` - UrgentPayment - Payment must be executed as an urgent transaction cleared through a real-time gross settlement system, which is typically identified as a wire or high value transaction, such as NG-RTGS.\n",
            "x-MXComponent" : "IndiaServiceLevel1Code",
            "enum" : [ "BKTR", "NURG", "URGP" ]
          },
          "local_instrument" : {
            "maxLength" : 4,
            "minLength" : 3,
            "type" : "string",
            "description" : "User community specific instrument.\n\nUsage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level.\n\nINTranLclInstrm-mandatoryCHQ_L2\nRule: If Payment Method is Cheque (CHK), then Local Instrument must be present.\n\nLocal Instrument Code:\nECS = ECS/NECS\nNEFT = NEFT\nNACH = NACH\nRTGS = NG-RTGS\nCII = Cheque Issuance\n\nSubset of local instrument codes as used in India.\n\nCode Name Definition:\n*`CII` - CII - Cheque Issuance.\n*`ECS` - ECS - Electronic Clearing System (ECS) or NECS National Electronic Clearing Service.\n*`NACH` - NACH - National Automated Clearing House.\n*`NEFT` - NEFT - National Electronic Funds Transfer.\n*`RTGS` - RTGS - Real Time Gross Settlement System.\n",
            "x-MXComponent" : "IndiaLocalInstrument1Code",
            "enum" : [ "CII", "ECS", "NACH", "NEFT", "RTGS" ]
          },
          "category_purpose" : {
            "type" : "string",
            "description" : "Specifies the high level purpose of the instruction based on a set of pre-defined categories.\nUsage: This is used by the initiating party to provide information concerning the processing of the payment. It is likely to trigger special processing by any of the agents involved in the payment chain.\n\nRule: Mandatory if Local Instrument is RTGS\n(Default 'CASH')\nCASH = CashManagementTransfer\nCORT = TradeSettlementPayment\nDIVI = Dividend\nGOVT = GovernmentPayment\nHEDG = Hedging\nINTC = IntraCompanyPayment\nINTE = Interest\nLOAN = Loan\nPENS = PensionPayment\nSALA = SalaryPayment\nSECU = Securities\nSSBE = SocialSecurityBenefit\nSUPP = SupplierPayment\nTAXS = TaxPayment\nTRAD = Trade\nTREA = TreasuryPayment\nVATX = ValueAddedTaxPayment\nWHLD = WithHolding Tax\n\nSubset of category purpose codes as used in India.\n\nCode Name Definition:\n*`CASH` - CashManagementTransfer - Transaction is a general cash management instruction.\n*`CORT` - TradeSettlementPayment - Transaction is related to settlement of a trade, eg a foreign exchange deal or a securities transaction.\n*`DIVI` - Dividend - Transaction is the payment of dividends. \n*`GOVT` - GovernmentPayment - Transaction is a payment to or from a government department.\n*`HEDG` - Hedging - Transaction is related to the payment of a hedging operation.\n*`INTC` - IntraCompanyPayment - Transaction is an intra-company payment, ie, a payment between two companies belonging to the same group.\n*`INTE` - Interest - Transaction is the payment of interest.\n*`LOAN` - Loan - Transaction is related to the transfer of a loan to a borrower.\n*`PENS` - PensionPayment - Transaction is the payment of pension.\n*`SALA` - SalaryPayment - Transaction is the payment of salaries.\n*`SECU` - Securities - Transaction is the payment of securities.\n*`SSBE` - SocialSecurityBenefit - Transaction is a social security benefit, ie payment made by a government to support individuals.\n*`SUPP` - SupplierPayment - Transaction is related to a payment to a supplier.\n*`TAXS` - TaxPayment - Transaction is the payment of taxes.\n*`TRAD` - Trade - Transaction is related to the payment of a trade finance transaction.\n*`TREA` - TreasuryPayment - Transaction is related to treasury operations.  E.g. financial contract settlement.\n*`VATX` - ValueAddedTaxPayment - Transaction is the payment of value added tax.\n*`WHLD` - WithHoldingTax - Transaction is the payment of withholding tax.\n",
            "x-MXComponent" : "IndiaCategoryPurpose1Code",
            "enum" : [ "CASH", "CORT", "DIVI", "GOVT", "HEDG", "INTC", "INTE", "LOAN", "PENS", "SALA", "SECU", "SSBE", "SUPP", "TAXS", "TRAD", "TREA", "VATX", "WHLD" ]
          },
          "instructed_amount" : {
            "$ref" : "#/components/schemas/RestrictedJVINCreditTransferTransaction34_instructed_amount"
          },
          "exchange_rate_information" : {
            "$ref" : "#/components/schemas/ExchangeRate1"
          },
          "charge_bearer" : {
            "type" : "string",
            "description" : "Specifies which party/parties will bear the charges associated with the processing of the payment transaction.\n\nRule: If Local Instrument is RTGS, Charge Bearer is Mandatory.\n\nSpecifies which party(ies) will pay charges due for processing of the instruction.\n\nCode Name Definition:\n*`CRED` - BorneByCreditor - All transaction charges are to be borne by the creditor.\n*`DEBT` - BorneByDebtor - All transaction charges are to be borne by the debtor.\n*`SHAR` - Shared - In a credit transfer context, means that transaction charges on the sender side are to be borne by the debtor, transaction charges on the receiver side are to be borne by the creditor. In a direct debit context, means that transaction charges on the sender side are to be borne by the creditor, transaction charges on the receiver side are to be borne by the debtor.\n*`SLEV` - FollowingServiceLevel - Charges are to be applied following the rules agreed in the service level and/or scheme.\n",
            "x-MXComponent" : "ChargeBearerType1Code",
            "enum" : [ "CRED", "DEBT", "SHAR", "SLEV" ]
          },
          "cheque_instruction" : {
            "$ref" : "#/components/schemas/RestrictedJVINCheque11"
          },
          "ultimate_debtor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "intermediary_agent1" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification13"
          },
          "creditor_agent" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification11"
          },
          "creditor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "creditor_account" : {
            "$ref" : "#/components/schemas/CashAccount214"
          },
          "ultimate_creditor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "instruction_for_creditor_agent" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "Further information related to the processing of the payment instruction, provided by the initiating party, and intended for the creditor agent.\n\nNG-RTGS: May be up to two occurrences.\n",
            "items" : {
              "$ref" : "#/components/schemas/InstructionForCreditorAgent1"
            }
          },
          "instruction_for_debtor_agent" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Further information related to the processing of the payment instruction, that may need to be acted upon by the debtor agent, depending on agreement between debtor and the debtor agent.\n\nRule: For an accompanying FileAct file, this is indicated with the codeword 'FACT/' followed by the file name. Together the FileAct codeword and file name must not exceed 65 characters and should be structured as:\nFACT/BIC/TransactionID/DocumentType/DocumentRefNo/Date.FileTypeExtension\nE.g.  FACT/IBKL/DSGGGH00099/A1/AABBCCD/20160502.PDF\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "purpose" : {
            "$ref" : "#/components/schemas/Purpose2Choice"
          },
          "regulatory_reporting" : {
            "maxItems" : 10,
            "type" : "array",
            "description" : "Information needed due to regulatory and statutory requirements.\n\nTransactions involving foreign exchange are subject to FEMA (Foreign Exchange Management Act ) regulations and are required to be reported.\n",
            "items" : {
              "$ref" : "#/components/schemas/RegulatoryReporting9"
            }
          },
          "tax" : {
            "$ref" : "#/components/schemas/TaxInformation8"
          },
          "related_remittance_information" : {
            "maxItems" : 10,
            "type" : "array",
            "description" : "Provides information related to the handling of the remittance information by any of the agents in the transaction processing chain.",
            "items" : {
              "$ref" : "#/components/schemas/RemittanceLocation12"
            }
          },
          "remittance_information" : {
            "$ref" : "#/components/schemas/RemittanceInformation25"
          }
        },
        "additionalProperties" : false,
        "description" : "Provide further details specific to the individual transaction(s) included in the API.",
        "x-MXComponent" : "RestrictedJVINCreditTransferTransaction34"
      },
      "RestrictedJVINCustomerPaymentStatusReportData1" : {
        "required" : [ "creation_date_time", "customer_payment_status_report_identification", "original_batch_payment_initiation_identification", "original_batch_payment_reference", "original_creation_date_time", "report_reference" ],
        "type" : "object",
        "properties" : {
          "report_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Unique technical identification of the customer payment status report as defined by the customer's server. \n\nNote: The customerdoes not use this field when first submitting the customer payment status report. but it should be used when subsequently retrieving the customer payment status report.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "customer_payment_status_report_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the instructing party, and sent to the next party in the chain to unambiguously identify the Customer Payment Status Report.\nUsage: The instructing party has to make sure that CustomerPaymentStatusReportIdentification is unique per instructed party for a pre-agreed period.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the API was created.\n\nRule: NG-RTGS: ISODateTime Time up to seconds only.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "initiating_party_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name by which a party is known and which is usually used to identify that party.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "initiating_party_bic" : {
            "pattern" : "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$",
            "type" : "string",
            "description" : "Business identification code of the organisation.\n\n\n\nBased on datatype AnyBICDec2014Identifier: Code allocated to a financial or non-financial institution by the ISO 9362 Registration Authority, as described in ISO 9362: 2014 - \"Banking - Banking telecommunication messages - Business identifier code (BIC)\".\n",
            "x-MXComponent" : "AnyBICDec2014Identifier"
          },
          "initiating_party_lei" : {
            "pattern" : "^[A-Z0-9]{18,18}[0-9]{2,2}$",
            "type" : "string",
            "description" : "Legal entity identification as an alternate identification for a party.\n\nBased on datatype LEIIdentifier: Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
            "x-MXComponent" : "LEIIdentifier"
          },
          "initiating_party_other_identification" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "Unique identification of an organisation, as assigned by an institution, using an identification scheme.\n\nRule: INInitiatingPartyIdBICOrOthr\nFor each Organisation Identification, at least one occurrence of Other Identification must be present when BIC is absent\n\n\n",
            "items" : {
              "$ref" : "#/components/schemas/GenericOrganisationIdentification5"
            }
          },
          "original_batch_payment_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Original, unique technical identification of the batch payment initiation as originally defined by the bank's server. \n\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "original_batch_payment_initiation_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the original instructing party, to unambiguously identify the original Batch Payment Initiation.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the original API was created.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "original_number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the original API.\n\nCGI-MP_OriginalNumberOfTransactionsRule\nIf supplied by originator in the initiation API, will be echoed back.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "original_control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the original API, irrespective of currencies.\n\nCGI-MP_OriginalControlSumRule\nIf supplied by originator in the initiation API, will be echoed back.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "group_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the status of a group of transactions.\n\nCGI-MP_GroupStatusRule: Required if reporting on a group level or combined group and transaction levels. Not Used if reporting at a transaction level only.\n\nACTC = Group only\nACCP = Group only and/or Consolidated status\nACSP = Group only and/or Consolidated status\nACWC = Group only and/or Consolidated status\nPART = Group  only and/or Consolidated status\nPDNG = Group  only and/or Consolidated status\nRJCT = Group  only and/or Consolidated status\nACSC = Accepted Settlement Completed\n\nRule: Refer to the ISO 20022 External Code List \"ExternalPaymentGroupStatus1Code\" for the complete list.\n\nSpecifies the status of a group of payment instructions, as published in an external payment group status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentGroupStatus1Code"
          },
          "status_reason_information_code" : {
            "type" : "array",
            "description" : "Provides detailed information on the status reason.\n\nNG-RTGS: Repeats only once\n\nCGI-MP_CodeRule\nCode required from External Code List.  If a bank's status code is supported other than a code from the External Code List, then the bank status code is shown under <AddtlInf>.\n\nRule: Refer to the ISO 20022 External Code List \"ExternalStatusReason1Code\" for the complete list.\n\nSpecifies the status reason, as published in an external status reason code list.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "items" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "ExternalStatusReason1Code"
            }
          },
          "additional_information" : {
            "type" : "array",
            "description" : "Further details on the status reason.\n\nUsage: Additional information can be used for several purposes such as the reporting of repaired information.\n\nBased on datatype Max105Text: Specifies a character string with a maximum length of 105 characters.\n",
            "items" : {
              "maxLength" : 105,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max105Text"
            }
          },
          "number_of_transactions_per_status" : {
            "type" : "array",
            "description" : "Detailed information on the number of transactions for each identical transaction status.",
            "items" : {
              "$ref" : "#/components/schemas/NumberOfTransactionsPerStatus5"
            }
          },
          "original_payment_information_and_status" : {
            "type" : "array",
            "description" : "Information concerning the original payment information, to which the status report API refers.",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINOriginalPaymentInstruction27"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.\n\nUsage\nThe RestrictedJVINCustomerPaymentStatusReportData1 (\"API\") is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.\nThe API can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.\nThe API refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.\nThe API can be used in domestic and cross-border scenarios.\nThe API may also be sent to the receiver of the payment in a real time payment scenario, as both sides of the transactions must be informed of the status of the transaction (e.g. either the beneficiary is credited, or the transaction is rejected).\n",
        "x-MXComponent" : "RestrictedJVINCustomerPaymentStatusReportData1"
      },
      "RestrictedJVINOriginalPaymentInstruction27" : {
        "required" : [ "original_payment_information_identification" ],
        "type" : "object",
        "properties" : {
          "original_payment_information_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the original sending party, to unambiguously identify the original payment information group.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "payment_information_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the status of the payment information group.\n\nCGI-MP_PaymentInformationStatusRule\nRequired if reporting on a payment level or combined payment and transaction levels. Not Used if reporting at a transaction level only.\n\n\nACCP: Accepted technical, syntactical and profile; passed to back office\n\nACSP:  Accepted back office; passed to clearing\n\nACWC:  Accepted with change\n\nPART:  Partially accepted and rejected \nPDNG:  Pending further processing\n\nRJCT:  Rejection\n\nRule: Refer to the ISO 20022 External Code List \"ExternalPaymentGroupStatus1Code\" for the complete list.\n\nSpecifies the status of a group of payment instructions, as published in an external payment group status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentGroupStatus1Code"
          },
          "status_reason_information_code" : {
            "type" : "array",
            "description" : "Provides detailed information on the status reason.\n\nCGI-MP_CodeRule\nCode required from External Code List.  If a bank's status reason code is supported other than a code from the External Code List, then the bank status code is shown under <AddtlInf>.\n\nRule: Refer to the ISO 20022 External Code List \"ExternalStatusReason1Code\" for the complete list.\n\nSpecifies the status reason, as published in an external status reason code list.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "items" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "ExternalStatusReason1Code"
            }
          },
          "additional_information" : {
            "type" : "array",
            "description" : "Further details on the status reason.\n\nUsage: Additional information can be used for several purposes such as the reporting of repaired information.\n\nBased on datatype Max105Text: Specifies a character string with a maximum length of 105 characters.\n",
            "items" : {
              "maxLength" : 105,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max105Text"
            }
          },
          "number_of_transactions_per_status" : {
            "type" : "array",
            "description" : "Detailed information on the number of transactions for each identical transaction status.",
            "items" : {
              "$ref" : "#/components/schemas/NumberOfTransactionsPerStatus5"
            }
          },
          "transaction_information_and_status" : {
            "type" : "array",
            "description" : "Provides information on the original transactions to which the status report API refers.\n\nNG-RTGS: Repeats only once\n\nCGI-MP_TransactionInformationAndStatusRule\nRequired if reporting on at the transaction level, at the payment/transaction level, or the group/payment/transaction levels. Not Used if reporting at only a group or payment level.\n\n\n",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINPaymentTransaction92"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Provides details information on the original transactions, to which the status report refers.",
        "x-MXComponent" : "RestrictedJVINOriginalPaymentInstruction27"
      },
      "RestrictedJVINOriginalTransactionReference27" : {
        "required" : [ "amount", "creditor_name", "debtor_account", "debtor_agent", "debtor_name", "requested_execution_date" ],
        "type" : "object",
        "properties" : {
          "interbank_settlement_amount" : {
            "$ref" : "#/components/schemas/RestrictedJVINA1A2OriginalTransactionReference27_interbank_settlement_amount"
          },
          "amount" : {
            "$ref" : "#/components/schemas/AmountType4Choice"
          },
          "requested_execution_date" : {
            "$ref" : "#/components/schemas/DateAndDateTime2Choice"
          },
          "instruction_priority" : {
            "type" : "string",
            "description" : "Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the instruction.\n\nNG-RTGS: \nHIGH = Priority Level is high.\nNORM = Priority Level is normal\nDefault is HIGH.\n\nSpecifies the priority level of an event.\n\nCode Name Definition:\n*`HIGH` - High - Priority level is high.\n*`NORM` - Normal - Priority level is normal.\n",
            "x-MXComponent" : "Priority2Code",
            "enum" : [ "HIGH", "NORM" ]
          },
          "clearing_channel" : {
            "type" : "string",
            "description" : "Specifies the clearing channel to be used to process the payment instruction.\n\nSpecifies the clearing channel for the routing of the transaction, as part of the payment type identification.\n\nCode Name Definition:\n*`BOOK` - BookTransfer - Payment through internal book transfer.\n*`MPNS` - MassPaymentNetSystem - Clearing channel is a mass payment net settlement system.\n*`RTGS` - RealTimeGrossSettlementSystem - Clearing channel is a real-time gross settlement system.\n*`RTNS` - RealTimeNetSettlementSystem - Clearing channel is a real-time net settlement system.\n",
            "x-MXComponent" : "ClearingChannel2Code",
            "enum" : [ "BOOK", "MPNS", "RTGS", "RTNS" ]
          },
          "service_level" : {
            "type" : "string",
            "description" : "Agreement under which or rules under which the transaction should be processed.\n\nValue: ExternalServiceLevel1Code\n\nRule: Mandatory only in case of credit transfer (payment method = TRF).\nNot used for Cheques (payment method = CHK)\n\nRule: For each Customer Credit Transfer Initiation API, if at least one occurrence of the following element(s) Credit Transfer [TRF] is (are) present, then Service Level must be present.\n\nSubset of service level codes as used in India.\n\nCode Name Definition:\n*`BKTR` - BookTransfer - Payment through internal book transfer.\n*`NURG` - NonUrgentPayment - Payment must be executed as a non-urgent transaction, which is typically identified as an ACH or low value transaction, such as NEFT / NACH / ECS / NECS.\n*`URGP` - UrgentPayment - Payment must be executed as an urgent transaction cleared through a real-time gross settlement system, which is typically identified as a wire or high value transaction, such as NG-RTGS.\n",
            "x-MXComponent" : "IndiaServiceLevel1Code",
            "enum" : [ "BKTR", "NURG", "URGP" ]
          },
          "local_instrument" : {
            "maxLength" : 4,
            "minLength" : 3,
            "type" : "string",
            "description" : "User community specific instrument.\n\nUsage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level.\n\nRule: If Payment Method is Cheque (CHK), then Local Instrument must be present.\n\nLocal Instrument Code:\nECS = ECS/NECS\nNEFT = NEFT\nNACH = NACH\nRTGS = NG-RTGS\nCII = Cheque Issuance\n\nSubset of local instrument codes as used in India.\n\nCode Name Definition:\n*`CII` - CII - Cheque Issuance.\n*`ECS` - ECS - Electronic Clearing System (ECS) or NECS National Electronic Clearing Service.\n*`NACH` - NACH - National Automated Clearing House.\n*`NEFT` - NEFT - National Electronic Funds Transfer.\n*`RTGS` - RTGS - Real Time Gross Settlement System.\n",
            "x-MXComponent" : "IndiaLocalInstrument1Code",
            "enum" : [ "CII", "ECS", "NACH", "NEFT", "RTGS" ]
          },
          "sequence_type" : {
            "type" : "string",
            "description" : "Identifies the direct debit sequence, such as first, recurrent, final or one-off.\n\nSpecifies the type of the current transaction that belongs to a sequence of transactions.\n\nCode Name Definition:\n*`FNAL` - Final - Final collection of a series of direct debit instructions.\n*`FRST` - First - First collection of a series of direct debit instructions.\n*`OOFF` - OneOff - Direct debit instruction where the debtor's authorisation is used to initiate one single direct debit transaction.\n*`RCUR` - Recurring - Direct debit instruction where the debtor's authorisation is used for regular direct debit transactions initiated by the creditor.\n*`RPRE` - Represented - Collection used to re-present previously reversed or returned direct debit transactions.\n",
            "x-MXComponent" : "SequenceType3Code",
            "enum" : [ "FNAL", "FRST", "OOFF", "RCUR", "RPRE" ]
          },
          "category_purpose" : {
            "type" : "string",
            "description" : "Specifies the high level purpose of the instruction based on a set of pre-defined categories.\nUsage: This is used by the initiating party to provide information concerning the processing of the payment. It is likely to trigger special processing by any of the agents involved in the payment chain.\n\nRule: Mandatory if Local Instrument is RTGS\n\n(Default 'CASH')\n\nCASH = CashManagementTransfer\n\nCORT = TradeSettlementPayment\n\nDIVI = Dividend\n\nGOVT = GovernmentPayment\n\nHEDG = Hedging\n\nINTC = IntraCompanyPayment\n\nINTE = Interest\n\nLOAN = Loan\n\nPENS = PensionPayment\n\nSALA = SalaryPayment\n\nSECU = Securities\n\nSSBE = SocialSecurityBenefit\n\nSUPP = SupplierPayment\n\nTAXS = TaxPayment\n\nTRAD = Trade\n\nTREA = TreasuryPayment\n\nVATX = ValueAddedTaxPayment\n\nWHLD = WithHolding Tax\n\nSubset of category purpose codes as used in India.\n\nCode Name Definition:\n*`CASH` - CashManagementTransfer - Transaction is a general cash management instruction.\n*`CORT` - TradeSettlementPayment - Transaction is related to settlement of a trade, eg a foreign exchange deal or a securities transaction.\n*`DIVI` - Dividend - Transaction is the payment of dividends. \n*`GOVT` - GovernmentPayment - Transaction is a payment to or from a government department.\n*`HEDG` - Hedging - Transaction is related to the payment of a hedging operation.\n*`INTC` - IntraCompanyPayment - Transaction is an intra-company payment, ie, a payment between two companies belonging to the same group.\n*`INTE` - Interest - Transaction is the payment of interest.\n*`LOAN` - Loan - Transaction is related to the transfer of a loan to a borrower.\n*`PENS` - PensionPayment - Transaction is the payment of pension.\n*`SALA` - SalaryPayment - Transaction is the payment of salaries.\n*`SECU` - Securities - Transaction is the payment of securities.\n*`SSBE` - SocialSecurityBenefit - Transaction is a social security benefit, ie payment made by a government to support individuals.\n*`SUPP` - SupplierPayment - Transaction is related to a payment to a supplier.\n*`TAXS` - TaxPayment - Transaction is the payment of taxes.\n*`TRAD` - Trade - Transaction is related to the payment of a trade finance transaction.\n*`TREA` - TreasuryPayment - Transaction is related to treasury operations.  E.g. financial contract settlement.\n*`VATX` - ValueAddedTaxPayment - Transaction is the payment of value added tax.\n*`WHLD` - WithHoldingTax - Transaction is the payment of withholding tax.\n",
            "x-MXComponent" : "IndiaCategoryPurpose1Code",
            "enum" : [ "CASH", "CORT", "DIVI", "GOVT", "HEDG", "INTC", "INTE", "LOAN", "PENS", "SALA", "SECU", "SSBE", "SUPP", "TAXS", "TRAD", "TREA", "VATX", "WHLD" ]
          },
          "debtor_agent" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification13"
          },
          "debtor_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Party that owes an amount of money to the (ultimate) creditor.\n\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "debtor_account" : {
            "maxLength" : 34,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unambiguous identification of the account of the debtor to which a debit entry will be made as a result of the transaction.\n\nBased on datatype Max34Text: Specifies a character string with a maximum length of 34 characters.\n",
            "x-MXComponent" : "Max34Text"
          },
          "creditor_agent" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification13"
          },
          "creditor_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Party to which an amount of money is due.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "creditor_account" : {
            "$ref" : "#/components/schemas/CashAccount214"
          },
          "purpose" : {
            "$ref" : "#/components/schemas/Purpose2Choice"
          }
        },
        "additionalProperties" : false,
        "description" : "Key elements used to refer the original transaction.",
        "x-MXComponent" : "RestrictedJVINOriginalTransactionReference27"
      },
      "RestrictedJVINPaymentInitiationData1" : {
        "required" : [ "batch_payment_initiation_identification", "batch_payment_reference", "creation_date_time", "initiating_party", "number_of_transactions", "payment_information" ],
        "type" : "object",
        "properties" : {
          "batch_payment_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Unique technical identification of the batch payment initiation as defined by the bank's server. \n\nNote: The corporate does not use this field when first submitting the batch payment initiation. but it should be used when subsequently retrieving the batch payment initiation.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "batch_payment_initiation_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Point to point reference, as assigned by the instructing party, sent to the next party in the chain to unambiguously identify the batch payment initiation.\nUsage: The instructing party has to make sure that BatchPaymentInitiationIdentification is unique per instructed party for a pre-agreed period.\n\nECS/NECS: 11.4 User Credit Reference\n14-character user defined reference number for the entire transaction.\n\nNACH: 12.16 User Reference\nMandatory, 18 character user defined reference number for the entire transaction (Alpha Numeric)\n\nNEFT: N06.2020 Transaction Reference Number\nUniquely identifies the message.\nMandatory, 16x\n\nNG-RTGS: 22-character number recommended:\nXXXX- Sender IFSC [4]\nYYYYMMDD - Creation Date Reverse [8]\nX – Channel [1]\nnnnnnnnnn- Sequence Number [9]\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "creation_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date and time at which the API was created.\n\nNEFT: N06.3535 Batch Time\nIf specified it must be either 1030 or 1200 or 1600.\nOptional, 4!n\n\nNG-RTGS: ISODateTime. Time up to seconds only.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "authorisation" : {
            "maxItems" : 2,
            "type" : "array",
            "description" : "User identification or any user key to be used to check whether the initiating party is allowed to initiate transactions from the account specified in the API.\n\nUsage: The content is not of a technical nature, but reflects the organisational structure at the initiating side.\nThe authorisation element can typically be used in relay scenarios, payment initiations, payment returns or payment reversals that are initiated on behalf of a party different from the initiating party.\n",
            "items" : {
              "$ref" : "#/components/schemas/Authorisation1Choice"
            }
          },
          "control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the message, irrespective of currencies.\n\nSame as per clearing requirements.\nNEFT: N06.4063 Sum of Amounts\nMandatory, 19d\n\nNACH: 12.19 Total items in File\nMandatory, 9 numeric\n\nCGI-MP_ControlSumRule\nIt is a client's option to include. If included, value will be checked. The sum is the hash total of values in Instructed Amount or Equivalent Amount.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "initiating_party" : {
            "$ref" : "#/components/schemas/PartyIdentification307"
          },
          "number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the API.\nNEFT: N06.1106 Total number of loops in the message\nNumber of transactions in message.\nMandatory, 5n\n\nNG-RTGS: Number of individual transactions contained in the message.\nRTGS limited to 1 transaction.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "payment_information" : {
            "type" : "array",
            "description" : "Set of characteristics that applies to the debit side of the payment transactions included in the credit transfer initiation.\n\nRule: INCreditorAccountRulePayMethod: For each Payment Information, at least one occurrence of Creditor Account must be present when at least one occurrence of Credit Transfer [TRF] is present\n\nRule: INCreditorAgentRulePayMethod: For each Payment Information, at least one occurrence of Creditor Agent must be present when at least one occurrence of Credit Transfer [TRF] is present\n",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINPaymentInstruction1"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Scope\nRestrictedJVINPaymentInitiationData1 (\"API\") is sent by the initiating party to the debtor agent. It is used to request movement of funds from the debtor account to a creditor.\n\nUsage\nRestrictedJVINPaymentInitiationData1 (\"API\") can contain one or more customer credit transfer instructions.\nThe API is used to exchange:\n- One or more instances of a credit transfer initiation;\n- Payment transactions that result in book transfers at the debtor agent or payments to another financial institution;\n- Payment transactions that result in an electronic cash transfer to the creditor account or in the emission of a cheque.\n\nThe API can be used in the following scenarios:\n- In a direct scenario, the API is sent directly to the debtor agent. The debtor agent is the account servicer of the debtor.\n- The API can also be used by an initiating party that has authority to send the message on behalf of the debtor. This caters for example for the scenario of a payments factory initiating all payments on behalf of a large corporate.\n- The API can be used in domestic and cross-border scenarios.\n- The API must not be used by the debtor agent to execute the credit transfer instruction(s). The FIToFICustomerCreditTransfer message or equivalent API must be used instead.\n\nRule: ChargeBearerPayOrTranLevel\nFor each Customer Credit Transfer Initiation, the following elements are mutually exclusive: Charge Bearer at Payment Information level and Charge Bearer at Transaction level and all may be absent\n\nRule: INTranSrvclv-optionalCHQ_L1\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\n\nRule: INTranSrvclvloptionalCHQ_L2\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Credit Transfer [TRF] is (are) present, then for each Payment Type Information, at least one occurrence of Service Level must be present\n\nRule: INTranLclInstrm-mandatoryCHQ_L1\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present\n\nRule: INTranLclInstrm-mandatoryCHQ_L2\nFor each Customer Credit Transfer Initiation, if at least one occurrence of Cheque [CHK] is (are) present, then for each Payment Type Information, at least one occurrence of Local Instrument must be present\n",
        "x-MXComponent" : "RestrictedJVINPaymentInitiationData1"
      },
      "RestrictedJVINPaymentInstruction1" : {
        "required" : [ "credit_transfer_transaction_information", "debtor", "debtor_account", "debtor_agent", "payment_information_identification", "payment_method", "requested_execution_date" ],
        "type" : "object",
        "properties" : {
          "payment_information_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by a sending party, to unambiguously identify the payment information group within the API.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "payment_method" : {
            "type" : "string",
            "description" : "Specifies the means of payment that will be used to move the amount of money.\n\nRule: INTranSrvclv-optionalCHQ_L1: If Payment Method is Credit Transfer [TRF], Service Level must be present.\nRule: INTranLclInstrm-mandatoryCHQ_L1: If Payment Method is Cheque [CHK], then Local Instrument must be present.\n\nSpecifies the transfer method that will be used to transfer the cash.\n\nCode Name Definition:\n*`CHK` - Cheque - Written order to a bank to pay a certain amount of money from one person to another person.\n*`TRF` - CreditTransfer - Transfer of an amount of money in the books of the account servicer.\n",
            "x-MXComponent" : "PaymentMethod7Code",
            "enum" : [ "CHK", "TRF" ]
          },
          "batch_booking" : {
            "type" : "boolean",
            "description" : "Identifies whether a single entry per individual transaction or a batch entry for the sum of the amounts of all transactions within the group of a API is requested.\nUsage: Batch booking is used to request and not order a possible batch booking.\n\nBased on datatype BatchBookingIndicator: Identifies whether the sending party requests a single debit or credit entry per individual transaction or a batch entry for the sum of the amounts of all transactions.\n",
            "x-MXComponent" : "BatchBookingIndicator"
          },
          "number_of_transactions" : {
            "pattern" : "^[0-9]{1,15}$",
            "type" : "string",
            "description" : "Number of individual transactions contained in the payment information group.\n\nBased on datatype Max15NumericText: Specifies a numeric string with a maximum length of 15 digits.\n",
            "x-MXComponent" : "Max15NumericText"
          },
          "control_sum" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Total of all individual amounts included in the group, irrespective of currencies.\n\nCGI-MP_ControlSumRule: It is a client's option to include. If included, value will be checked. The sum is the hash total of values in Instructed Amount or Equivalent Amount.\n\nBased on datatype DecimalNumber: Number of objects represented as a decimal number, for example 0.75 or 45.6.\n",
            "x-MXComponent" : "DecimalNumber"
          },
          "instruction_priority" : {
            "type" : "string",
            "description" : "Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the instruction.\n\nNG-RTGS: \nHIGH = Priority Level is high.\nNORM = Priority Level is normal\nDefault is HIGH.\n\nSpecifies the priority level of an event.\n\nCode Name Definition:\n*`HIGH` - High - Priority level is high.\n*`NORM` - Normal - Priority level is normal.\n",
            "x-MXComponent" : "Priority2Code",
            "enum" : [ "HIGH", "NORM" ]
          },
          "service_level" : {
            "type" : "string",
            "description" : "Agreement under which or rules under which the transaction should be processed.\n\nValue: ExternalServiceLevel1Code\n\nRule: If Payment Method is Credit Transfer [TRF], Service Level must be present.\nNot used for Cheques (payment method = CHK)\n\nINTranSrvclvloptionalCHQ_L1\nRule: For each Customer Credit Transfer Initiation API, if at least one occurrence of Credit Transfer [TRF] is (are) present, then Service Level must be present.\n\n\nSubset of service level codes as used in India.\n\nCode Name Definition:\n*`BKTR` - BookTransfer - Payment through internal book transfer.\n*`NURG` - NonUrgentPayment - Payment must be executed as a non-urgent transaction, which is typically identified as an ACH or low value transaction, such as NEFT / NACH / ECS / NECS.\n*`URGP` - UrgentPayment - Payment must be executed as an urgent transaction cleared through a real-time gross settlement system, which is typically identified as a wire or high value transaction, such as NG-RTGS.\n",
            "x-MXComponent" : "IndiaServiceLevel1Code",
            "enum" : [ "BKTR", "NURG", "URGP" ]
          },
          "local_instrument" : {
            "maxLength" : 4,
            "minLength" : 3,
            "type" : "string",
            "description" : "User community specific instrument.\n\nUsage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level.\n\nINTranLclInstrm-mandatoryCHQ_L1\nRule: If Payment Method is Cheque (CHK), then Local Instrument must be present.\n\nLocal Instrument Code:\nECS = ECS/NECS\nNEFT = NEFT\nNACH = NACH\nRTGS = NG-RTGS\nCII = Cheque Issuance\n\nSubset of local instrument codes as used in India.\n\nCode Name Definition:\n*`CII` - CII - Cheque Issuance.\n*`ECS` - ECS - Electronic Clearing System (ECS) or NECS National Electronic Clearing Service.\n*`NACH` - NACH - National Automated Clearing House.\n*`NEFT` - NEFT - National Electronic Funds Transfer.\n*`RTGS` - RTGS - Real Time Gross Settlement System.\n",
            "x-MXComponent" : "IndiaLocalInstrument1Code",
            "enum" : [ "CII", "ECS", "NACH", "NEFT", "RTGS" ]
          },
          "category_purpose" : {
            "type" : "string",
            "description" : "Specifies the high level purpose of the instruction based on a set of pre-defined categories.\nUsage: This is used by the initiating party to provide information concerning the processing of the payment. It is likely to trigger special processing by any of the agents involved in the payment chain.\n\nRule: Mandatory if Local Instrument is RTGS\n(Default 'CASH')\nCASH = CashManagementTransfer\nCORT = TradeSettlementPayment\nDIVI = Dividend\nGOVT = GovernmentPayment\nHEDG = Hedging\nINTC = IntraCompanyPayment\nINTE = Interest\nLOAN = Loan\nPENS = PensionPayment\nSALA = SalaryPayment\nSECU = Securities\nSSBE = SocialSecurityBenefit\nSUPP = SupplierPayment\nTAXS = TaxPayment\nTRAD = Trade\nTREA = TreasuryPayment\nVATX = ValueAddedTaxPayment\nWHLD = WithHolding Tax\n\nSubset of category purpose codes as used in India.\n\nCode Name Definition:\n*`CASH` - CashManagementTransfer - Transaction is a general cash management instruction.\n*`CORT` - TradeSettlementPayment - Transaction is related to settlement of a trade, eg a foreign exchange deal or a securities transaction.\n*`DIVI` - Dividend - Transaction is the payment of dividends. \n*`GOVT` - GovernmentPayment - Transaction is a payment to or from a government department.\n*`HEDG` - Hedging - Transaction is related to the payment of a hedging operation.\n*`INTC` - IntraCompanyPayment - Transaction is an intra-company payment, ie, a payment between two companies belonging to the same group.\n*`INTE` - Interest - Transaction is the payment of interest.\n*`LOAN` - Loan - Transaction is related to the transfer of a loan to a borrower.\n*`PENS` - PensionPayment - Transaction is the payment of pension.\n*`SALA` - SalaryPayment - Transaction is the payment of salaries.\n*`SECU` - Securities - Transaction is the payment of securities.\n*`SSBE` - SocialSecurityBenefit - Transaction is a social security benefit, ie payment made by a government to support individuals.\n*`SUPP` - SupplierPayment - Transaction is related to a payment to a supplier.\n*`TAXS` - TaxPayment - Transaction is the payment of taxes.\n*`TRAD` - Trade - Transaction is related to the payment of a trade finance transaction.\n*`TREA` - TreasuryPayment - Transaction is related to treasury operations.  E.g. financial contract settlement.\n*`VATX` - ValueAddedTaxPayment - Transaction is the payment of value added tax.\n*`WHLD` - WithHoldingTax - Transaction is the payment of withholding tax.\n",
            "x-MXComponent" : "IndiaCategoryPurpose1Code",
            "enum" : [ "CASH", "CORT", "DIVI", "GOVT", "HEDG", "INTC", "INTE", "LOAN", "PENS", "SALA", "SECU", "SSBE", "SUPP", "TAXS", "TRAD", "TREA", "VATX", "WHLD" ]
          },
          "requested_execution_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date at which the initiating party requests the clearing agent to process the payment. \nUsage: This is the date on which the debtor's account is to be debited. If payment by cheque, the date when the cheque must be generated by the bank.\n\nRule: If Local Instrument is:\n\nECS/NECS: : 11.11 Settlement date: 8-digit (DDMMYYYY) date on which settlement is sought to be effected\n\nNACH: : 12.11 Settlement date: 8-digit (DDMMYYYY) date on which settlement is sought to be effected\n\nNEFT: N06.3380 Value Date: Date on which settlement takes place. It can be only the current date.\nMandatory, 8!n\n\nNG-RTGS: InterbankSettlementDate\n\n\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "debtor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "debtor_account" : {
            "$ref" : "#/components/schemas/CashAccount214"
          },
          "debtor_agent" : {
            "$ref" : "#/components/schemas/BranchAndFinancialInstitutionIdentification11"
          },
          "instruction_for_debtor_agent" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Further information related to the processing of the payment instruction, that may need to be acted upon by the debtor agent, depending on agreement between debtor and the debtor agent.\n\nUsage: when present, then the instructions for the debtor agent apply for all credit transfer transaction information occurrences, present in the payment information.\n\nA note 'Refer PurpCdXchgRateInf under Supplementary Data for Debtor's Account information.' may be put in this field.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "ultimate_debtor" : {
            "$ref" : "#/components/schemas/PartyIdentification304"
          },
          "charge_bearer" : {
            "type" : "string",
            "description" : "Specifies which party/parties will bear the charges associated with the processing of the payment transaction.\n\nRule: ChargeBearerPayOrTranLevel\nCharge Bearer at Payment Information level and Transaction level is mutually exclusive and all may be absent\n\nSpecifies which party(ies) will pay charges due for processing of the instruction.\n\nCode Name Definition:\n*`CRED` - BorneByCreditor - All transaction charges are to be borne by the creditor.\n*`DEBT` - BorneByDebtor - All transaction charges are to be borne by the debtor.\n*`SHAR` - Shared - In a credit transfer context, means that transaction charges on the sender side are to be borne by the debtor, transaction charges on the receiver side are to be borne by the creditor. In a direct debit context, means that transaction charges on the sender side are to be borne by the creditor, transaction charges on the receiver side are to be borne by the debtor.\n*`SLEV` - FollowingServiceLevel - Charges are to be applied following the rules agreed in the service level and/or scheme.\n",
            "x-MXComponent" : "ChargeBearerType1Code",
            "enum" : [ "CRED", "DEBT", "SHAR", "SLEV" ]
          },
          "charges_account" : {
            "$ref" : "#/components/schemas/CashAccount38"
          },
          "credit_transfer_transaction_information" : {
            "type" : "array",
            "description" : "Provides information on the individual transaction(s) included in the API.\n\nPaymentTransaction\nMay be batched.  Receiving bank would rearrange depending on clearing requirements (e.g. NG-RTGS processes payments individually).\n\nNEFT: Maximum 10 Transactions through clearing\nNG-RTGS: Maximum 1 Transaction through clearing\n",
            "items" : {
              "$ref" : "#/components/schemas/RestrictedJVINCreditTransferTransaction34"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Payment Instruction data as required in India domestic payments.",
        "x-MXComponent" : "RestrictedJVINPaymentInstruction1"
      },
      "RestrictedJVINPaymentTransaction92" : {
        "required" : [ "original_end_to_end_identification" ],
        "type" : "object",
        "properties" : {
          "status_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by an instructing party for an instructed party, to unambiguously identify the reported status.\nUsage: The instructing party is the party sending the status API and not the party that sent the original instruction that is being reported on.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_instruction_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the original instructing party for the original instructed party, to unambiguously identify the original instruction.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_end_to_end_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the original initiating party, to unambiguously identify the original transaction.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_uetr" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Universally unique identifier to provide an end-to-end reference of a payment transaction.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "transaction_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the status of a transaction, in a coded form.\n\nCGI-MP_TransactionStatusRule\nRequired if reporting on a transaction level.  Not Used if reporting only at a group or payment level.\n\n\nACCP: Accepted technical, syntactical and profile; passed to back office\n\nACSP:  Accepted back office; passed to clearing\nACWC:  Accepted with change\n\nPDNG:  Pending further processing\n\nRJCT:  Rejection\nACCC: Accepted Settlement Completed Creditor Account\n\nRule: Refer to the ISO 20022 External Code List \"ExternalPaymentTransactionStatus1Code\" for the complete list.\n\nSpecifies the status of an individual payment instructions, as published in an external payment transaction status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentTransactionStatus1Code"
          },
          "status_reason_information_code" : {
            "type" : "array",
            "description" : "Provides detailed information on the status reason.\n\nCGI-MP_CodeRule\nCode required from External Code List.  If a bank's status reason code is supported other than a code from the External Code List, then the bank status code is shown under <AddtlInf>.\n\nRule: Refer to the ISO 20022 External Code List \"ExternalStatusReason1Code\" for the complete list.\n\nSpecifies the status reason, as published in an external status reason code list.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "items" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "ExternalStatusReason1Code"
            }
          },
          "additional_information" : {
            "type" : "array",
            "description" : "Further details on the status reason.\n\nUsage: Additional information can be used for several purposes such as the reporting of repaired information.\n\n- Use Codeword “/POSTED/”  to indicate settlement on the creditor's account has been completed.\n\nBased on datatype Max105Text: Specifies a character string with a maximum length of 105 characters.\n",
            "items" : {
              "maxLength" : 105,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max105Text"
            }
          },
          "acceptance_date_time" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Point in time when the payment order from the initiating party meets the processing conditions of the account servicing agent. This means that the account servicing agent has received the payment order and has applied checks such as authorisation, availability of funds.\n\nBased on datatype ISODateTime: A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\nNote on the time format:\n1) beginning / end of calendar day\n00:00:00 = the beginning of a calendar day\n24:00:00 = the end of a calendar day\n2) fractions of second in time format\nDecimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed.\n",
            "x-MXComponent" : "ISODateTime"
          },
          "account_servicer_reference" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique reference, as assigned by the account servicing institution, to unambiguously identify the instruction.\n\nBank to use this field to populate their unique reference of the (A1/A2) transaction processed.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "clearing_system_reference" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique reference, as assigned by a clearing system, to unambiguously identify the instruction.\n\nFor transactions sent for clearing through NG-RTGS, the Unique Transaction Reference (UTR) may be recorded here. \n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_transaction_reference" : {
            "$ref" : "#/components/schemas/RestrictedJVINOriginalTransactionReference27"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides further details on the original transactions, to which the status report refers.",
        "x-MXComponent" : "RestrictedJVINPaymentTransaction92"
      },
      "StructuredRegulatoryReporting4" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the type of the information supplied in the regulatory reporting details.\n\nFEMA = Foreign Exchange Management Act.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date related to the specified type of regulatory reporting details.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "country" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Country related to the specified type of regulatory reporting details.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "code" : {
            "maxLength" : 5,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the nature, purpose, and reason for the transaction to be reported for regulatory and statutory requirements in a coded form.\n\nFEMA Purpose code, 5-Character code.\n\nBased on datatype Max5Text: Specifies a character string with a maximum length of 5 characters.\n",
            "x-MXComponent" : "Max5Text"
          },
          "amount" : {
            "$ref" : "#/components/schemas/StructuredRegulatoryReporting4_amount"
          },
          "information" : {
            "type" : "array",
            "description" : "Additional details that cater for specific domestic regulatory requirements.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "items" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max35Text"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Information needed due to regulatory and statutory requirements.",
        "x-MXComponent" : "StructuredRegulatoryReporting4"
      },
      "StructuredRemittanceInformation21" : {
        "type" : "object",
        "properties" : {
          "referred_document_information" : {
            "type" : "array",
            "description" : "Provides the identification and the content of the referred document.",
            "items" : {
              "$ref" : "#/components/schemas/ReferredDocumentInformation10"
            }
          },
          "referred_document_amount" : {
            "$ref" : "#/components/schemas/RemittanceAmount2"
          },
          "creditor_reference_information" : {
            "$ref" : "#/components/schemas/CreditorReferenceInformation5"
          },
          "invoicer_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of the organisation issuing the invoice, when it is different from the creditor or ultimate creditor.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "invoicee_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification of the party to whom an invoice is issued, when it is different from the debtor or ultimate debtor.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "tax_remittance" : {
            "$ref" : "#/components/schemas/TaxInformation7"
          },
          "garnishment_remittance" : {
            "$ref" : "#/components/schemas/Garnishment3"
          },
          "additional_remittance_information" : {
            "maxItems" : 3,
            "type" : "array",
            "description" : "Additional information, in free text form, to complement the structured remittance information.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "items" : {
              "maxLength" : 140,
              "minLength" : 1,
              "type" : "string",
              "x-MXComponent" : "Max140Text"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system, in a structured form.",
        "x-MXComponent" : "StructuredRemittanceInformation21"
      },
      "SummaryData2" : {
        "required" : [ "total_remittance_amount", "value_date_of_remittance" ],
        "type" : "object",
        "properties" : {
          "total_remittance_amount" : {
            "$ref" : "#/components/schemas/SummaryData2_total_remittance_amount"
          },
          "value_date_of_remittance" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Value Date.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          }
        },
        "additionalProperties" : false,
        "description" : "Foreign Remittance Info contains total remittance amount, charge bearer and value date of remittance.\n\nConditional ChargeBearerMandatoryForForeignRmtInfo\nCharge Bearer is mandatory if Foreign Remittance info is present\nIf\nCreditTransferTransactionInformation/ForeignRemittanceDetails/ForeignRemittanceInfo is present\nThen\n/Document/CstmrCdtTrfInitn/PmtInf/ChrgBr is mandatory\n",
        "x-MXComponent" : "SummaryData2"
      },
      "TaxAmount2" : {
        "type" : "object",
        "properties" : {
          "rate" : {
            "maxLength" : 12,
            "type" : "string",
            "description" : "Rate used to calculate the tax.\n\nBased on datatype PercentageRate: Rate expressed as a percentage, that is, in hundredths, for example, 0.7 is 7/10 of a percent, and 7.0 is 7%.\n",
            "x-MXComponent" : "PercentageRate"
          },
          "taxable_base_amount" : {
            "$ref" : "#/components/schemas/TaxAmount2_taxable_base_amount"
          },
          "total_amount" : {
            "$ref" : "#/components/schemas/TaxAmount2_total_amount"
          },
          "details" : {
            "type" : "array",
            "description" : "Set of elements used to provide details on the tax period and amount.",
            "items" : {
              "$ref" : "#/components/schemas/TaxRecordDetails2"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Set of elements used to provide information on the tax amount(s) of tax record.",
        "x-MXComponent" : "TaxAmount2"
      },
      "TaxAmountAndType1" : {
        "required" : [ "amount" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/TaxAmountType1Choice"
          },
          "amount" : {
            "$ref" : "#/components/schemas/DiscountAmountAndType1_amount"
          }
        },
        "additionalProperties" : false,
        "description" : "Specifies the amount with a specific type.",
        "x-MXComponent" : "TaxAmountAndType1"
      },
      "TaxAmountType1Choice" : {
        "type" : "object",
        "additionalProperties" : true,
        "description" : "Specifies the amount type.",
        "x-MXComponent" : "TaxAmountType1Choice",
        "oneOf" : [ {
          "required" : [ "code" ],
          "type" : "object",
          "properties" : {
            "code" : {
              "maxLength" : 4,
              "minLength" : 1,
              "type" : "string",
              "description" : "Specifies the amount type, in a coded form.\n\nSpecifies the nature, or use, of the amount in the format of character string with a maximum length of 4 characters.\nThe list of valid codes is an external code list published separately.\nExternal code sets can be downloaded from www.iso20022.org.\n",
              "x-MXComponent" : "ExternalTaxAmountType1Code"
            }
          },
          "additionalProperties" : false
        }, {
          "required" : [ "proprietary" ],
          "type" : "object",
          "properties" : {
            "proprietary" : {
              "maxLength" : 35,
              "minLength" : 1,
              "type" : "string",
              "description" : "Specifies the amount type, in a free-text form.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
              "x-MXComponent" : "Max35Text"
            }
          },
          "additionalProperties" : false
        } ]
      },
      "TaxAuthorisation1" : {
        "type" : "object",
        "properties" : {
          "title" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Title or position of debtor or the debtor's authorised representative.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Name of the debtor or the debtor's authorised representative.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Details of the authorised tax paying party.",
        "x-MXComponent" : "TaxAuthorisation1"
      },
      "TaxInformation7" : {
        "type" : "object",
        "properties" : {
          "creditor" : {
            "$ref" : "#/components/schemas/TaxParty1"
          },
          "debtor" : {
            "$ref" : "#/components/schemas/TaxParty2"
          },
          "ultimate_debtor" : {
            "$ref" : "#/components/schemas/TaxParty2"
          },
          "administration_zone" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Territorial part of a country to which the tax payment is related.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "reference_number" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Tax reference information that is specific to a taxing agency.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "method" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Method used to indicate the underlying business or how the tax is paid.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "total_taxable_base_amount" : {
            "$ref" : "#/components/schemas/TaxInformation7_total_taxable_base_amount"
          },
          "total_tax_amount" : {
            "$ref" : "#/components/schemas/TaxInformation7_total_tax_amount"
          },
          "date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date by which tax is due.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "sequence_number" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Sequential number of the tax report.\n\nBased on datatype Number: Number of objects represented as an integer.\n",
            "x-MXComponent" : "Number"
          },
          "record" : {
            "type" : "array",
            "description" : "Record of tax details.",
            "items" : {
              "$ref" : "#/components/schemas/TaxRecord2"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Details about tax paid, or to be paid, to the government in accordance with the law, including pre-defined parameters such as thresholds and type of account.",
        "x-MXComponent" : "TaxInformation7"
      },
      "TaxInformation8" : {
        "type" : "object",
        "properties" : {
          "creditor" : {
            "$ref" : "#/components/schemas/TaxParty1"
          },
          "debtor" : {
            "$ref" : "#/components/schemas/TaxParty2"
          },
          "administration_zone" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Territorial part of a country to which the tax payment is related.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "reference_number" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Tax reference information that is specific to a taxing agency.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "method" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Method used to indicate the underlying business or how the tax is paid.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "total_taxable_base_amount" : {
            "$ref" : "#/components/schemas/TaxInformation7_total_taxable_base_amount"
          },
          "total_tax_amount" : {
            "$ref" : "#/components/schemas/TaxInformation7_total_tax_amount"
          },
          "date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Date by which tax is due.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "sequence_number" : {
            "maxLength" : 19,
            "type" : "string",
            "description" : "Sequential number of the tax report.\n\nBased on datatype Number: Number of objects represented as an integer.\n",
            "x-MXComponent" : "Number"
          },
          "record" : {
            "type" : "array",
            "description" : "Record of tax details.",
            "items" : {
              "$ref" : "#/components/schemas/TaxRecord2"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "Details about tax paid, or to be paid, to the government in accordance with the law, including pre-defined parameters such as thresholds and type of account.",
        "x-MXComponent" : "TaxInformation8"
      },
      "TaxParty1" : {
        "type" : "object",
        "properties" : {
          "tax_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Tax identification number of the creditor.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "registration_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by an organisation, to unambiguously identify a party.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "tax_type" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Type of tax payer.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Details about the entity involved in the tax paid or to be paid.",
        "x-MXComponent" : "TaxParty1"
      },
      "TaxParty2" : {
        "type" : "object",
        "properties" : {
          "tax_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Tax identification number of the debtor.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "registration_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by an organisation, to unambiguously identify a party.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "tax_type" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Type of tax payer.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "authorisation" : {
            "$ref" : "#/components/schemas/TaxAuthorisation1"
          }
        },
        "additionalProperties" : false,
        "description" : "Details about the entity involved in the tax paid or to be paid.",
        "x-MXComponent" : "TaxParty2"
      },
      "TaxPeriod2" : {
        "type" : "object",
        "properties" : {
          "year" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Year related to the tax payment.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "type" : {
            "type" : "string",
            "description" : "Identification of the period related to the tax payment.\n\nSpecifies the period related to the tax payment.\n\nCode Name Definition:\n*`HLF1` - FirstHalf - Tax is related to the first half of the period.\n*`HLF2` - SecondHalf - Tax is related to the second half of the period.\n*`MM01` - FirstMonth - Tax is related to the second month of the period.\n*`MM02` - SecondMonth - Tax is related to the first month of the period.\n*`MM03` - ThirdMonth - Tax is related to the third month of the period.\n*`MM04` - FourthMonth - Tax is related to the fourth month of the period.\n*`MM05` - FifthMonth - Tax is related to the fifth month of the period.\n*`MM06` - SixthMonth - Tax is related to the sixth month of the period.\n*`MM07` - SeventhMonth - Tax is related to the seventh month of the period.\n*`MM08` - EighthMonth - Tax is related to the eighth month of the period.\n*`MM09` - NinthMonth - Tax is related to the ninth month of the period.\n*`MM10` - TenthMonth - Tax is related to the tenth month of the period.\n*`MM11` - EleventhMonth - Tax is related to the eleventh month of the period.\n*`MM12` - TwelfthMonth - Tax is related to the twelfth month of the period.\n*`QTR1` - FirstQuarter - Tax is related to the first quarter of the period.\n*`QTR2` - SecondQuarter - Tax is related to the second quarter of the period.\n*`QTR3` - ThirdQuarter - Tax is related to the third quarter of the period.\n*`QTR4` - FourthQuarter - Tax is related to the forth quarter of the period.\n",
            "x-MXComponent" : "TaxRecordPeriod1Code",
            "enum" : [ "HLF1", "HLF2", "MM01", "MM02", "MM03", "MM04", "MM05", "MM06", "MM07", "MM08", "MM09", "MM10", "MM11", "MM12", "QTR1", "QTR2", "QTR3", "QTR4" ]
          },
          "from_to_date" : {
            "$ref" : "#/components/schemas/DatePeriod2"
          }
        },
        "additionalProperties" : false,
        "description" : "Period of time details related to the tax payment.",
        "x-MXComponent" : "TaxPeriod2"
      },
      "TaxRecord2" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "High level code to identify the type of tax details.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "category" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the tax code as published by the tax authority.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "category_details" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Provides further details of the category tax code.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "debtor_status" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Code provided by local authority to identify the status of the party that has drawn up the settlement document.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "certificate_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identification number of the tax report as assigned by the taxing authority.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "forms_code" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Identifies, in a coded form, on which template the tax report is to be provided.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "period" : {
            "$ref" : "#/components/schemas/TaxPeriod2"
          },
          "tax_amount" : {
            "$ref" : "#/components/schemas/TaxAmount2"
          },
          "additional_information" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Further details of the tax record.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          }
        },
        "additionalProperties" : false,
        "description" : "Set of elements used to define the tax record.",
        "x-MXComponent" : "TaxRecord2"
      },
      "TaxRecordDetails2" : {
        "required" : [ "amount" ],
        "type" : "object",
        "properties" : {
          "period" : {
            "$ref" : "#/components/schemas/TaxPeriod2"
          },
          "amount" : {
            "$ref" : "#/components/schemas/TaxRecordDetails2_amount"
          }
        },
        "additionalProperties" : false,
        "description" : "Provides information on the individual tax amount(s) per period of the tax record.",
        "x-MXComponent" : "TaxRecordDetails2"
      },
      "TransportDocumentAndShipmentData1" : {
        "type" : "object",
        "properties" : {
          "transport_document_reference" : {
            "maxLength" : 50,
            "minLength" : 1,
            "type" : "string",
            "description" : "Transport Document Number.\n\nBased on datatype Max50Text: Specifies a character string with a maximum length of 50 characters.\n",
            "x-MXComponent" : "Max50Text"
          },
          "transport_document_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "Transport Document Date.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "import_export_code" : {
            "pattern" : "^[0-9]{1,10}$",
            "type" : "string",
            "description" : "Import Export Code.\n\nBased on datatype Max10NumericText: Specifies a numeric string with a maximum length of 10 digits.\n",
            "x-MXComponent" : "Max10NumericText"
          },
          "shipment_date" : {
            "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)(?:Z|[+-][01]\\d:[0-5]\\d)?$",
            "type" : "string",
            "description" : "On Board Shipping Date.\n\nBased on datatype ISODate: A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in \"XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004\" which is aligned with ISO 8601.\n",
            "x-MXComponent" : "ISODate"
          },
          "country_of_origin" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Country Of Origin.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          },
          "port_of_loading" : {
            "maxLength" : 64,
            "minLength" : 1,
            "type" : "string",
            "description" : "Port Of Loadng.\n\nBased on datatype Max64Text: Specifies a character string with a maximum length of 64 characters.\n",
            "x-MXComponent" : "Max64Text"
          },
          "consignee" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "When consignee is other than the remitter.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "shipping_company" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Freight forwarder or shipping company.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "vessel_name" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Vessel Name.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "imo_code" : {
            "pattern" : "^[0-9]{1,7}$",
            "type" : "string",
            "description" : "International Maritime Organization Code.\n\nBased on datatype Max7NumericText: Specifies a numeric string with a maximum length of 7 digits.\n",
            "x-MXComponent" : "Max7NumericText"
          },
          "payment_terms" : {
            "maxLength" : 140,
            "minLength" : 1,
            "type" : "string",
            "description" : "Payment Term as mentioned in Invoice.\n\nBased on datatype Max140Text: Specifies a character string with a maximum length of 140 characters.\n",
            "x-MXComponent" : "Max140Text"
          },
          "transhipment_port" : {
            "maxLength" : 65,
            "minLength" : 1,
            "type" : "string",
            "description" : "Transhipment Port.\n\nBased on datatype Max65Text: Specifies a character string with a maximum length of 65 characters.\n",
            "x-MXComponent" : "Max65Text"
          }
        },
        "additionalProperties" : false,
        "description" : "When remittance purpose is - Post Shipment Import Of Goods and when Transport document details are available.",
        "x-MXComponent" : "TransportDocumentAndShipmentData1"
      },
      "UltimateDebtorNationality1" : {
        "type" : "object",
        "properties" : {
          "country_of_residence" : {
            "type" : "string",
            "description" : "Nationality of Ul.\n\nNationality of Ul.\n\nCode Name Definition:\n*`FORN` - ForeignNational - When the nationality is other than Indian.\n*`PIOC` - PersonOfIndianOrigin - Person Of Indian Origin.\n*`RESI` - ResidentIndian - Resident is Indian National.\n",
            "x-MXComponent" : "CountryOfResidence1Code",
            "enum" : [ "FORN", "PIOC", "RESI" ]
          },
          "foreign_national_country_code" : {
            "pattern" : "^[A-Z]{2,2}$",
            "type" : "string",
            "description" : "Foreign National Country Code when the Nationality code is FORN.\nConditional ForeignNationalCountryCodeRule\nForeign National Country Code mandatory when the country of residence of Ultimate Debtor is - FORN (Foreign National)\nIf\nWhen CreditTransferTransactionInformation/ForeignRemittanceDetails/UltimateDebtorNationality/CountryOfResidence = FORN\nThen\nCreditTransferTransactionInformation/ForeignRemittanceDetails/UltimateDebtorNationality/ForeignNationalCountryCode must be present.\n\nCode to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).\n",
            "x-MXComponent" : "CountryCode"
          }
        },
        "additionalProperties" : false,
        "description" : "Ultimate Debtor Nationality can be foreign, Indian resident or person of Indian origin.",
        "x-MXComponent" : "UltimateDebtorNationality1"
      },
      "AdvanceImportGuaranteeData1_guarantee_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "SBLC or BG Amount.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "AmountData1_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "AmountType4Choice_instructed_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.\n\nUsage: This amount has to be transported unchanged through the transaction chain.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "BillOfEntryAndShipmentData1_boe_utilisation_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "BOE Utilisation Amount is crucial to indicate the amount debited against each BOE. This amount may be paid in full/partial.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "ChargesAndTax_local_bank_charges" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Local Bank Charges.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "ChargesAndTax_gst_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "GST Amount.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "ChargesAndTax_total_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Total amount to be debited\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "DiscountAmountAndType1_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money, which has been typed.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "DocumentAdjustment1_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money of the document adjustment.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "EquivalentAmount2_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money to be moved between debtor and creditor, before deduction of charges, expressed in the currency of the debtor's account, and to be moved in a different currency.\nUsage: The first agent will convert the equivalent amount into the amount to be moved.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "Garnishment3_remitted_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money remitted for the referred document.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "InvoiceData1_invoice_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Invoice Amount.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "InvoiceData1_misc_charges" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Charges.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "InvoiceData1_net_payable_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Net Payable Amount.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "PurchaseOrderData1_purchase_order_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "PO or PI Amount.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "RemittanceAmount2_due_payable_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount specified is the exact amount due and payable to the creditor.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "RemittanceAmount2_credit_note_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount specified for the referred document is the amount of a credit note.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "RemittanceAmount3_credit_note_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of a credit note.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "RemittanceAmount3_remitted_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money remitted.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "RestrictedJVINA1A2CreditTransferTransaction34_instructed_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.\n\nUsage: This amount has to be transported unchanged through the transaction chain.\n\nRule: Currency is INR\n\nECS/NECS: 22.11 Amount\n13-digit amount in paise (1 rupee = 100 paise).\n\nNACH: 23.11 Amount\n13-digit amount in paise (1 rupee = 100 paise).\n\nNEFT: N06.4038 Amount\nCcy = \"INR\"\n\nNG-RTGS: <FIToFICstmrCdtTrf/CdtTrfTxInf/IntrBkSttlmAmt>\nCcy=\"INR\"\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "RestrictedJVINA1A2OriginalTransactionReference27_interbank_settlement_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money moved between the instructing agent and the instructed agent.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "RestrictedJVINCreditTransferTransaction34_instructed_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.\n\nUsage: This amount has to be transported unchanged through the transaction chain.\n\nRule: Currency is INR\n\n13-digit amount in paise (1 rupee = 100 paise).\nCcy=\"INR\"\n\nECS/NECS: 22.11 Amount\n13-digit amount in paise (1 rupee = 100 paise).\n\nNACH: 23.11 Amount\n13-digit amount in paise (1 rupee = 100 paise).\n\nNEFT: N06.4038 Amount\nCcy = \"INR\"\n\nNG-RTGS: <FIToFICstmrCdtTrf/CdtTrfTxInf/IntrBkSttlmAmt>\nCcy=\"INR\"\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "StructuredRegulatoryReporting4_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money to be reported for regulatory and statutory requirements.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "SummaryData2_total_remittance_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Total Remittance Amount\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "TaxAmount2_taxable_base_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Amount of money on which the tax is based.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "TaxAmount2_total_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Total amount that is the result of the calculation of the tax for the record.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "TaxInformation7_total_taxable_base_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Total amount of money on which the tax is based.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "TaxInformation7_total_tax_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Total amount of money as result of the calculation of the tax.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "TaxRecordDetails2_amount" : {
        "required" : [ "amount", "currency" ],
        "type" : "object",
        "properties" : {
          "currency" : {
            "pattern" : "^[A-Z]{3,3}$",
            "type" : "string",
            "x-MXComponent" : "ActiveOrHistoricCurrencyCode"
          },
          "amount" : {
            "maxLength" : 19,
            "pattern" : "^0*(([0-9]{0,13}\\.[0-9]{1,5})|([0-9]{0,14}\\.[0-9]{1,4})|([0-9]{0,15}\\.[0-9]{1,3})|([0-9]{0,16}\\.[0-9]{1,2})|([0-9]{0,17}\\.[0-9]{1,1})|([0-9]{0,18}\\.)|0*|([0-9]{0,18}))$",
            "type" : "string"
          }
        },
        "additionalProperties" : false,
        "description" : "Underlying tax amount related to the specified period.\n\nBased on datatype ActiveOrHistoricCurrencyAndAmount: A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.\n"
      },
      "ISONormalisedDateTime" : {
        "type" : "string",
        "description" : "an ISODateTime whereby all timezoned dateTime values are UTC.",
        "pattern" : "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.[0-9]+)?(?:Z)$"
      },
      "CloudEventsEnvelope" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "description" : "A unique identifier for the event. MUST be unique within the scope of the event producer. MUST be a non-empty string.",
            "type" : "string"
          },
          "source" : {
            "description" : "Identifies the context in which the event happened. Event producers MUST ensure that source + id is unique for each distinct event. MUST be a non-empty URI reference (absolute URI recommended).",
            "type" : "string",
            "format" : "uri-reference"
          },
          "specversion" : {
            "description" : "The version of the CloudEvents specification which the event uses. MUST be a non-empty string wth the version denoted as major.minor (e.g. '1.0')",
            "type" : "string"
          },
          "type" : {
            "description" : "Describes the type of event related to the originating occurrence. MUST be a non-empty string. SHOULD be prefixed with a reverse DNS name.",
            "type" : "string"
          },
          "datacontenttype" : {
            "description" : "The content type of the 'data' value.",
            "type" : "string"
          },
          "dataschema" : {
            "description" : "Identifies the schema that 'data' adheres to. If present MUST be a non-empty URI - NOTE: For Swift events, dataschema MUST be supplied even though it remains optional in the specification as per the CloudEvents specification.",
            "type" : "string",
            "format" : "uri-reference"
          },
          "subject" : {
            "description" : "This describes the subject of the event in the context of the event producer (identified by 'source'). A subscriber will typically subscribe to events emitted by a source, but the source identifier alone might not be sufficient as a qualifier for any specific event if the source context has internal sub-structure.",
            "type" : "string"
          },
          "time" : {
            "$ref" : "#/components/schemas/ISONormalisedDateTime"
          }
        },
        "required" : [ "id", "source", "type", "specversion", "dataschema" ]
      },
      "JVINPaymentEventDetails1" : {
        "type" : "object",
        "description" : "Notification from a Bank to the Customer that initiated the payment. The Notification informs the Customer of a change in status for the payment and provides the API request that may be used to retrieve the payment details.",
        "additionalProperties" : false,
        "properties" : {
          "batch_payment_reference" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Unique technical identification of the batch payment initiation as defined by the bank's server. \n\nNote: The corporate does not use this field when first submitting the batch payment initiation. but it should be used when subsequently retrieving the batch payment initiation.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "original_instruction_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the original instructing party for the original instructed party, to unambiguously identify the original instruction.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_end_to_end_identification" : {
            "maxLength" : 35,
            "minLength" : 1,
            "type" : "string",
            "description" : "Unique identification, as assigned by the original initiating party, to unambiguously identify the original transaction.\n\nBased on datatype Max35Text: Specifies a character string with a maximum length of 35 characters.\n",
            "x-MXComponent" : "Max35Text"
          },
          "original_uetr" : {
            "pattern" : "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$",
            "type" : "string",
            "description" : "Universally unique identifier to provide an end-to-end reference of a payment transaction.\n\nBased on datatype UUIDv4Identifier: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".\n",
            "x-MXComponent" : "UUIDv4Identifier"
          },
          "transaction_status" : {
            "maxLength" : 4,
            "minLength" : 1,
            "type" : "string",
            "description" : "Specifies the status of a transaction, in a coded form.\n\nCGI-MP_TransactionStatusRule\nRequired if reporting on a transaction level.  Not Used if reporting only at a group or payment level.\n\n\nACCP: Accepted technical, syntactical and profile; passed to back office\n\nACSP:  Accepted back office; passed to clearing\nACWC:  Accepted with change\n\nPDNG:  Pending further processing\n\nRJCT:  Rejection\n\nSpecifies the status of an individual payment instructions, as published in an external payment transaction status code set.\nExternal code sets can be downloaded from www.iso20022.org.\n",
            "x-MXComponent" : "ExternalPaymentTransactionStatus1Code"
          },
          "transaction_url_address" : {
            "x-MXComponent" : "Max256Text",
            "description" : "Address for the Universal Resource Locator (URL), for example used over the www (HTTP) service.\n\nSpecifies a character string with a maximum length of 256 characters.\n",
            "type" : "string",
            "minLength" : 1,
            "maxLength" : 256
          }
        }
      },
      "JVINPaymentEvent" : {
        "type" : "object",
        "description" : "Notification from a Bank to the Customer that initiated the payment. The Notification informs the Customer of a change in status for the payment and provides the API request that may be used to retrieve the payment details.",
        "properties" : {
          "data" : {
            "$ref" : "#/components/schemas/JVINPaymentEventDetails1"
          }
        },
        "additionalProperties" : false
      },
      "NotificationRequest" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/CloudEventsEnvelope"
        }, {
          "$ref" : "#/components/schemas/JVINPaymentEvent"
        } ]
      }
    },
    "responses" : {
      "401-Unauthorized" : {
        "description" : "Covers the following scenarios:\n* SwAP502 - Invalid Signing Certificate. The certificate cannot be used for doing the API transaction.\n* SwAP502 - Invalid OAuth access token.\n* SwAP508 - OAuth access token not provided.\n* SwAP509 - Customer number not defined.",
        "headers" : {
          "Swift-Request-ID" : {
            "$ref" : "#/components/headers/Swift-Request-ID"
          }
        },
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorMessage"
            },
            "examples" : {
              "401-SwAP502-cert" : {
                "$ref" : "#/components/examples/401-SwAP502-cert"
              },
              "401-SwAP502-token" : {
                "$ref" : "#/components/examples/401-SwAP502-token"
              },
              "401-SwAP508" : {
                "$ref" : "#/components/examples/401-SwAP508"
              },
              "401-SwAP509" : {
                "$ref" : "#/components/examples/401-SwAP509"
              }
            }
          }
        }
      },
      "403-Forbidden" : {
        "description" : "Covers the following scenarios:\n- SwAP503 - OAuth access token has insufficient scope for the requested service. ",
        "headers" : {
          "Swift-Request-ID" : {
            "$ref" : "#/components/headers/Swift-Request-ID"
          }
        },
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorMessage"
            },
            "examples" : {
              "403-SwAP503" : {
                "$ref" : "#/components/examples/403-SwAP503"
              }
            }
          }
        }
      },
      "404-NotFound" : {
        "description" : "Covers the following scenarios:\n- SwAP506 - Resource does not exist.",
        "headers" : {
          "Swift-Request-ID" : {
            "$ref" : "#/components/headers/Swift-Request-ID"
          }
        },
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorMessage"
            },
            "examples" : {
              "404-SwAP506" : {
                "$ref" : "#/components/examples/404-SwAP506"
              }
            }
          }
        }
      },
      "429-TooManyRequests" : {
        "description" : "Covers the following scenarios:\n- SwAP507 - Request cannot be processed at this time. Please try again..",
        "headers" : {
          "Swift-Request-ID" : {
            "$ref" : "#/components/headers/Swift-Request-ID"
          }
        },
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorMessage"
            },
            "examples" : {
              "429-SwAP507" : {
                "$ref" : "#/components/examples/429-SwAP507"
              }
            }
          }
        }
      },
      "503-ServiceUnavailable" : {
        "description" : "Covers the following scenarios:\n- SwAP590 - Service is temporarily unavailable.",
        "headers" : {
          "Swift-Request-ID" : {
            "$ref" : "#/components/headers/Swift-Request-ID"
          }
        },
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorMessage"
            },
            "examples" : {
              "503-SwAP590" : {
                "$ref" : "#/components/examples/503-SwAP590"
              }
            }
          }
        }
      },
      "504-GatewayTimeout" : {
        "description" : "Covers the following scenarios:\n- SwAP591 - Service Provider time out.",
        "headers" : {
          "Swift-Request-ID" : {
            "$ref" : "#/components/headers/Swift-Request-ID"
          }
        },
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorMessage"
            },
            "examples" : {
              "504-SwAP591" : {
                "$ref" : "#/components/examples/504-SwAP591"
              }
            }
          }
        }
      }
    },
    "examples" : {
      "400-SwAP510" : {
        "summary" : "SwAP510: The API method does not support non-repudiation.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP510",
          "text" : "The API method does not support non-repudiation."
        }
      },
      "400-SwAP509" : {
        "summary" : "SwAP509: Missing mandatory signature on the non-repudiation API transaction.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP509",
          "text" : "Missing mandatory signature on the non-repudiation API transaction."
        }
      },
      "400-SwAP504-txt" : {
        "summary" : "SwAP504: Text is custom to the schema error",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP504",
          "text" : "Text is custom to the schema error"
        }
      },
      "400-SwAP504-bic" : {
        "summary" : "SwAP504: Invalid Bic.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP504",
          "text" : "Invalid Bic."
        }
      },
      "400-SwAP504-svc" : {
        "summary" : "SwAP504: Invalid Service.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP504",
          "text" : "Invalid Service."
        }
      },
      "400-SwAP522" : {
        "summary" : "SwAP522: The request cannot processed. The x-bic value provided is not valid.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP522",
          "text" : "The request cannot processed. The x-bic value provided is not valid."
        }
      },
      "400-SwAP504" : {
        "summary" : "SwAP504: JSON request body does not conform to policy.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP504",
          "text" : "JSON request body does not conform to policy."
        }
      },
      "400-SwAP505" : {
        "summary" : "SwAP505: XML request body does not conform to policy.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP505",
          "text" : "XML request body does not conform to policy."
        }
      },
      "400-SwAP501" : {
        "summary" : "SwAP501: API request is malformed.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP501",
          "text" : "API request is malformed."
        }
      },
      "401-SwAP502-cert" : {
        "summary" : "SwAP502: Invalid Signing Certificate. The certificate cannot be used for doing the API transaction.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP502",
          "text" : "Invalid Signing Certificate. The certificate cannot be used for doing the API transaction."
        }
      },
      "401-SwAP502-token" : {
        "summary" : "SwAP502: Invalid OAuth access token.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP502",
          "text" : "Invalid OAuth access token."
        }
      },
      "401-SwAP508" : {
        "summary" : "SwAP508: OAuth access token not provided.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP508",
          "text" : "OAuth access token not provided."
        }
      },
      "401-SwAP509" : {
        "summary" : "SwAP509: Customer number not defined.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP509",
          "text" : "Customer number not defined."
        }
      },
      "403-SwAP503" : {
        "summary" : "SwAP503: OAuth access token has insufficient scope for the requested service. ",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP503",
          "text" : "OAuth access token has insufficient scope for the requested service."
        }
      },
      "404-SwAP506" : {
        "summary" : "SwAP506: Resource does not exist.",
        "value" : {
          "severity" : "Fatal",
          "code" : "SwAP506",
          "text" : "Resource does not exist."
        }
      },
      "429-SwAP507" : {
        "summary" : "SwAP507: Request cannot be processed at this time. Please try again..",
        "value" : {
          "severity" : "Transient",
          "code" : "SwAP507",
          "text" : "Request cannot be processed at this time. Please try again.."
        }
      },
      "503-SwAP590" : {
        "summary" : "SwAP590: Service is temporarily unavailable.",
        "value" : {
          "severity" : "Transient",
          "code" : "SwAP590",
          "text" : "Service is temporarily unavailable."
        }
      },
      "504-SwAP591" : {
        "summary" : "SwAP591: Service Provider time out.",
        "value" : {
          "severity" : "Transient",
          "code" : "SwAP591",
          "text" : "Service Provider time out."
        }
      }
    },
    "headers" : {
      "X-Request-ID" : {
        "description" : "Specify an unique end to end tracking request ID. The element will be populated by the SWIFT API gateway",
        "schema" : {
          "type" : "string",
          "maxLength" : 270
        },
        "required" : true
      },
      "Swift-Request-ID" : {
        "required" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid"
        },
        "examples" : {
          "XRequestIdResponseHeader" : {
            "value" : "ce480d68-2612-4aef-867a-e91566a1e012"
          }
        },
        "description" : "A Universally Unique Identifier (UUID) generated by the API Gateway for tracking and support purposes.\nThis Swift-Request-ID response header must always be returned to the API consumer, even when the response is an error message"
      }
    },
    "securitySchemes" : {
      "oauthBearerToken" : {
        "type" : "http",
        "description" : "The access token obtained as a result of OAuth 2.0 flows. SWIFT supports two OAuth grant types for consumption depending on the environment where the API is exposed. \n\n* MV-SIPN - jwt-bearer grant type [RFC 7523](https://tools.ietf.org/html/rfc7523) with Signed JWT assertion\n* Internet - Password grant type with license credentials.\n\nThis API uses JWT-Bearer grant type.\n\nPlease visit [SWIFT OAuth Token API](https://developer.swift.com/swift-oauth-token-api) page for more information and examples on how to generate an OAuth token.\n\nIn this declaration only the basic security element to transport the bearer token of an OAuth2 process is declared.\n",
        "scheme" : "bearer",
        "bearerFormat" : "opaque OAuth 2.0"
      },
      "oAuth2" : {
        "type" : "oauth2",
        "description" : "This API uses OAuth2 with the client credentials grant type for service provider API gateway integration. Used between an end SWIFT API gateway and service provider API gateway.\n\nPlease visit [SWIFT OAuth Token API](https://developer.swift.com/swift-oauth-token-api) for more information and examples.\n",
        "flows" : {
          "clientCredentials" : {
            "tokenUrl" : "/v1/oauth2/token",
            "scopes" : { }
          }
        }
      }
    }
  },
  "x-notifications" : {
    "/payment-initiation" : {
      "post" : {
        "events" : [ {
          "type" : "payment-initiation.status",
          "schema" : {
            "$ref" : "#/components/schemas/NotificationRequest"
          }
        } ]
      }
    }
  }
}