{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/swift/json-schema/swift-payment-transaction149-schema.json",
  "title": "PaymentTransaction149",
  "description": "Contains the details on the payment transaction.",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/swift-gpi-transactions-api-openapi.yml#/components/schemas/PaymentTransaction149",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "uetr": {
      "$ref": "#/$defs/UUIDv4Identifier"
    },
    "master_uetr": {
      "$ref": "#/$defs/UUIDv4Identifier"
    },
    "sub_uetr": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/UUIDv4Identifier"
      }
    },
    "transaction_status": {
      "$ref": "#/$defs/TransactionIndividualStatus5Code"
    },
    "transaction_status_reason": {
      "$ref": "#/$defs/TransactionIndividualStatusReason1Code"
    },
    "reject_return_reason": {
      "$ref": "#/$defs/TrackerPaymentStatusReason3Code"
    },
    "transaction_cancellation_status": {
      "$ref": "#/$defs/CancellationIndividualStatus2Code"
    },
    "cases": {
      "$ref": "#/$defs/Number"
    },
    "initiation_date_time": {
      "$ref": "#/$defs/ISONormalisedDateTime"
    },
    "completion_date_time": {
      "$ref": "#/$defs/ISONormalisedDateTime"
    },
    "last_update_date_time": {
      "$ref": "#/$defs/ISONormalisedDateTime"
    },
    "events_skipped": {
      "$ref": "#/$defs/TrueFalseIndicator"
    },
    "payment_event": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/PaymentEvent15"
      }
    }
  },
  "required": [
    "uetr",
    "transaction_status",
    "initiation_date_time",
    "last_update_date_time",
    "events_skipped"
  ],
  "$defs": {
    "AccountIdentification58Choice": {
      "type": "object",
      "description": "Specifies the unique identification of an account as assigned by the account servicer.",
      "additionalProperties": true,
      "oneOf": [
        {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "iban": {
              "$ref": "#/$defs/IBAN2007Identifier"
            }
          },
          "required": [
            "iban"
          ]
        },
        {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "identification": {
              "$ref": "#/$defs/Max34Text"
            }
          },
          "required": [
            "identification"
          ]
        }
      ]
    },
    "ActiveCurrencyAndAmount": {
      "type": "object",
      "description": "A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.",
      "additionalProperties": false,
      "properties": {
        "currency": {
          "$ref": "#/$defs/ActiveCurrencyCode"
        },
        "amount": {
          "type": "string",
          "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}))$"
        }
      },
      "required": [
        "currency",
        "amount"
      ]
    },
    "ActiveCurrencyCode": {
      "type": "string",
      "pattern": "^[A-Z]{3,3}$",
      "description": "A 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\"."
    },
    "ActiveOrHistoricCurrencyAndAmount": {
      "type": "object",
      "description": "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.",
      "additionalProperties": false,
      "properties": {
        "currency": {
          "$ref": "#/$defs/ActiveOrHistoricCurrencyCode"
        },
        "amount": {
          "type": "string",
          "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}))$"
        }
      },
      "required": [
        "currency",
        "amount"
      ]
    },
    "ActiveOrHistoricCurrencyCode": {
      "type": "string",
      "pattern": "^[A-Z]{3,3}$",
      "description": "A 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\"."
    },
    "AmountInconsistency1Code": {
      "type": "string",
      "description": "Specifies whether the amount information matches the tracker record reference data or not.\n*`ICNS`-Amount information does not match the reference data record.",
      "enum": [
        "ICNS"
      ]
    },
    "BICFIDec2014Identifier": {
      "type": "string",
      "description": "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)\".",
      "pattern": "^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$"
    },
    "BaseOneRate": {
      "type": "string",
      "description": "Rate expressed as a decimal, for example, 0.7 is 7/10 and 70%.",
      "maxLength": 12
    },
    "BranchAndFinancialInstitutionIdentification1Choice": {
      "type": "object",
      "description": "Unique and unambiguous identification of a financial institution or a branch of a financial institution.",
      "additionalProperties": true,
      "oneOf": [
        {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "bicfi": {
              "$ref": "#/$defs/BICFIDec2014Identifier"
            }
          },
          "required": [
            "bicfi"
          ]
        },
        {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "name": {
              "$ref": "#/$defs/Max140Text"
            }
          },
          "required": [
            "name"
          ]
        }
      ]
    },
    "BusinessService22Code": {
      "type": "string",
      "description": "Specifies the Service Level agreed between the two MessagingEndpoints under which rules this Business Message is exchanged.\n*`G001`-Indicates the gpi Customer Credit Transfer (CCT) service.\n*`G002`-Indicates the gpi Stop and Recall (SRP) service.\n*`G009`-Indicates the Swift GO service.\n*`G004`-Indicates the gpi Financial Institution Credit Transfer service (FIT).\n*`SPLI`-Indicates the payment is a split payment.\r\n\r\nA split payment is a payment that is split into several payments of lower value, namely with the purpose to comply with maximum amount thresholds applicable to some domestic Payment Market Infrastructures or to reduce counterparty liquidity risk.",
      "enum": [
        "G001",
        "G002",
        "G009",
        "G004",
        "SPLI"
      ]
    },
    "CancellationIndividualStatus2Code": {
      "type": "string",
      "description": "Specifies the status of a cancellation request.\n*`CNCL`-Payment is cancelled.\n*`PDCR`-Cancellation request is pending.\n*`RJCR`-Cancellation request is rejected",
      "enum": [
        "CNCL",
        "PDCR",
        "RJCR"
      ]
    },
    "CancellationReason8Code": {
      "type": "string",
      "description": "Provides the possible reasons why a payment is to be cancelled.\n*`DUPL`-Payment is a duplicate of another payment.\n*`AGNT`-Agent in the payment workflow is incorrect.\n*`CURR`-Currency of the payment is incorrect.\n*`CUST`-Cancellation requested by the Debtor.\n*`UPAY`-Payment is not justified.\n*`CUTA`-Cancellation requested because an investigation request has been received and no remediation is possible.\n*`TECH`-Cancellation requested following technical problems resulting in an erroneous transaction.\n*`FRAD`-Cancellation requested following a transaction that was originated fraudulently. The use of the FraudulentOrigin code should be governed by jurisdictions.\n*`COVR`-Cover payment has been cancelled or returned.\n*`AM09`-Amount of the payment is incorrect.",
      "enum": [
        "DUPL",
        "AGNT",
        "CURR",
        "CUST",
        "UPAY",
        "CUTA",
        "TECH",
        "FRAD",
        "COVR",
        "AM09"
      ]
    },
    "CancellationRequest2": {
      "type": "object",
      "description": "Contains detailed information from the cancellation request (for example an MT 192 or an MT 199).",
      "additionalProperties": false,
      "properties": {
        "cancellation_reason_information": {
          "$ref": "#/$defs/CancellationReason8Code"
        },
        "indemnity_agreement": {
          "$ref": "#/$defs/PendingPaymentCancellationReason2Code"
        }
      },
      "required": [
        "cancellation_reason_information"
      ]
    },
    "CancellationResponse1": {
      "type": "object",
      "description": "Contains detailed information from the cancellation response (for example an MT 196 or an MT 199).",
      "additionalProperties": false,
      "properties": {
        "investigation_execution_status": {
          "$ref": "#/$defs/InvestigationExecutionConfirmation5Code"
        },
        "investigation_execution_status_reason": {
          "$ref": "#/$defs/InvestigationExecutionStatusReason1"
        }
      },
      "required": [
        "investigation_execution_status"
      ]
    },
    "ChargeBearerType1Code": {
      "type": "string",
      "description": "Specifies which party(ies) will pay charges due for processing of the instruction.\n*`DEBT`-All transaction charges are to be borne by the debtor.\n*`CRED`-All transaction charges are to be borne by the creditor.\n*`SHAR`-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`-Charges are to be applied following the rules agreed in the service level and/or scheme.",
      "enum": [
        "DEBT",
        "CRED",
        "SHAR",
        "SLEV"
      ]
    },
    "Charges15": {
      "type": "object",
      "description": "Provides information on the charges related to the payment transaction.",
      "additionalProperties": false,
      "properties": {
        "amount": {
          "$ref": "#/$defs/ActiveCurrencyAndAmount"
        },
        "agent": {
          "$ref": "#/$defs/BranchAndFinancialInstitutionIdentification1Choice"
        }
      },
      "required": [
        "amount",
        "agent"
      ]
    },
    "CreditTransferTransaction59": {
      "type": "object",
      "description": "Provides further details specific to the individual transaction(s) included in the message.",
      "additionalProperties": false,
      "properties": {
        "debtor_agent": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "previous_instructing_agent1": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "previous_instructing_agent2": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "previous_instructing_agent3": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "intermediary_agent1": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "intermediary_agent2": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "intermediary_agent3": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "creditor_agent": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        }
      }
    },
    "ExternalCashClearingSystem1Code": {
      "type": "string",
      "minLength": 1,
      "maxLength": 3,
      "description": "Specifies the cash clearing system, as published in an external cash clearing system code list.\r\nExternal code sets can be downloaded from www.iso20022.org."
    },
    "ExternalInvalidEventReason1Code": {
      "type": "string",
      "minLength": 1,
      "maxLength": 9,
      "description": "Codeset containing the reasons why an event (a message)was invalid in the context of the transaction. "
    },
    "IBAN2007Identifier": {
      "type": "string",
      "description": "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.",
      "pattern": "^[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}$"
    },
    "ISODate": {
      "type": "string",
      "description": "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.",
      "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)?$"
    },
    "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)$"
    },
    "InvestigationExecutionConfirmation5Code": {
      "type": "string",
      "description": "Provides the status on an investigation.\n*`CNCL`-Used when a requested cancellation is successful.\n*`PDCR`-Used when a requested cancellation is pending.\n*`RJCR`-Used when a requested cancellation has been rejected.",
      "enum": [
        "CNCL",
        "PDCR",
        "RJCR"
      ]
    },
    "InvestigationExecutionStatusReason1": {
      "type": "object",
      "description": "Provides the reason for a status on the execution of an investigation.",
      "additionalProperties": false,
      "properties": {
        "rejected": {
          "$ref": "#/$defs/PaymentCancellationRejection3Code"
        },
        "pending": {
          "$ref": "#/$defs/PendingPaymentCancellationReason1Code"
        }
      }
    },
    "Max140Text": {
      "type": "string",
      "description": "Specifies a character string with a maximum length of 140 characters.",
      "minLength": 1,
      "maxLength": 140
    },
    "Max34Text": {
      "type": "string",
      "description": "Specifies a character string with a maximum length of 34 characters.",
      "minLength": 1,
      "maxLength": 34
    },
    "Max3Text": {
      "type": "string",
      "description": "Specifies a character string with a maximum length of 3 characters.",
      "minLength": 1,
      "maxLength": 3
    },
    "Max4Text": {
      "type": "string",
      "description": "Specifies a character string with a maximum length of 4 characters.",
      "minLength": 1,
      "maxLength": 4
    },
    "Max50Text": {
      "type": "string",
      "description": "Specifies a character string with a maximum length of 50 characters.",
      "minLength": 1,
      "maxLength": 50
    },
    "Number": {
      "type": "string",
      "description": "Number of objects represented as an integer.",
      "maxLength": 19
    },
    "PaymentCancellationRejection3Code": {
      "type": "string",
      "description": "Returned when a request for cancellation cannot be executed.\n*`AGNT`-Reported when the cancellation cannot be accepted because of an agent refuses to cancel.\n*`ARDT`-Cancellation not accepted as the transaction has already been returned.\n*`INDM`-Cancellation indemnity is required.\n*`AC04`-Account number specified has been closed on the receiver’s books.\n*`CUST`-Reported when the cancellation cannot be accepted because of a customer decision (Creditor).\n*`AM04`-Amount of funds available to cover specified message amount is insufficient.\n*`LEGL`-Reported when the cancellation cannot be accepted because of regulatory rules.\n*`NOAS`-No response from beneficiary (to the cancellation request).\n*`NOOR`-Original transaction (subject to cancellation) never received.",
      "enum": [
        "AGNT",
        "ARDT",
        "INDM",
        "AC04",
        "CUST",
        "AM04",
        "LEGL",
        "NOAS",
        "NOOR"
      ]
    },
    "PaymentCancellationStatusReason2Code": {
      "type": "string",
      "description": "Provides status reasons with regards to the cancellation of the payment.\n*`S004`-Stop and recall request forwarded to processing/last agent and delivery acknowledgement received.\n*`S003`-Stop and recall request forwarded to processing/last agent but delivery acknowledgement not received.\n*`S002`-Payment instruction stopped because the UETR was cancelled.\n*`S000`-Stop and recall request sent to the tracking system.\n*`S001`-Stop and recall request added to cancellation list.",
      "enum": [
        "S004",
        "S003",
        "S002",
        "S000",
        "S001"
      ]
    },
    "PaymentEvent15": {
      "type": "object",
      "description": "Contains information coming from the related payment instruction (specified for example in the related trck.001 or pacs.008/pacs.009/pacs.002/pacs.004).",
      "additionalProperties": false,
      "properties": {
        "network_reference": {
          "$ref": "#/$defs/Max50Text"
        },
        "message_name_identification": {
          "$ref": "#/$defs/RestrictedFINXMax16Text"
        },
        "service_level": {
          "type": "array",
          "maxItems": 2,
          "items": {
            "$ref": "#/$defs/BusinessService22Code"
          }
        },
        "tracker_event_type": {
          "$ref": "#/$defs/TrackerEventType4Code"
        },
        "valid": {
          "$ref": "#/$defs/TrueFalseIndicator"
        },
        "invalidity_reason": {
          "$ref": "#/$defs/ExternalInvalidEventReason1Code"
        },
        "invalidity_description": {
          "$ref": "#/$defs/RestrictedFINXMax350Text"
        },
        "event_status": {
          "$ref": "#/$defs/TransactionIndividualStatus5Code"
        },
        "event_status_date": {
          "$ref": "#/$defs/ISONormalisedDateTime"
        },
        "event_status_reason": {
          "$ref": "#/$defs/TransactionIndividualStatusReason1Code"
        },
        "event_reject_return_reason": {
          "$ref": "#/$defs/TrackerPaymentStatusReason3Code"
        },
        "amount_inconsistency": {
          "$ref": "#/$defs/AmountInconsistency1Code"
        },
        "instruction_identification": {
          "$ref": "#/$defs/RestrictedFINXMax35Text"
        },
        "end_to_end_identification": {
          "$ref": "#/$defs/RestrictedFINXMax35Text"
        },
        "tracked_message_identification": {
          "$ref": "#/$defs/RestrictedFINXMax35Text"
        },
        "master_uetr": {
          "$ref": "#/$defs/UUIDv4Identifier"
        },
        "sub_uetr": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UUIDv4Identifier"
          }
        },
        "case_identification": {
          "$ref": "#/$defs/RestrictedFINXMax16Text"
        },
        "original_instruction_identification": {
          "$ref": "#/$defs/RestrictedFINXMax35Text"
        },
        "assignment_identification": {
          "$ref": "#/$defs/RestrictedFINXMax16Text"
        },
        "cancellation_request_details": {
          "$ref": "#/$defs/CancellationRequest2"
        },
        "cancellation_response_details": {
          "$ref": "#/$defs/CancellationResponse1"
        },
        "cancellation_request_tracking_status": {
          "$ref": "#/$defs/PaymentCancellationStatusReason2Code"
        },
        "tracker_informing_party": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "settlement_method": {
          "$ref": "#/$defs/SettlementMethod1Code"
        },
        "clearing_system": {
          "$ref": "#/$defs/ExternalCashClearingSystem1Code"
        },
        "instructed_agent": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "technical_sender": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "technical_receiver": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "interbank_settlement_date": {
          "$ref": "#/$defs/ISODate"
        },
        "instructed_amount": {
          "$ref": "#/$defs/ActiveOrHistoricCurrencyAndAmount"
        },
        "interbank_settlement_amount": {
          "$ref": "#/$defs/ActiveCurrencyAndAmount"
        },
        "source_currency": {
          "$ref": "#/$defs/ActiveCurrencyCode"
        },
        "target_currency": {
          "$ref": "#/$defs/ActiveCurrencyCode"
        },
        "exchange_rate": {
          "$ref": "#/$defs/BaseOneRate"
        },
        "charge_bearer": {
          "$ref": "#/$defs/ChargeBearerType1Code"
        },
        "charges_information": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Charges15"
          }
        },
        "confirmed_date": {
          "$ref": "#/$defs/ISONormalisedDateTime"
        },
        "confirmed_amount": {
          "$ref": "#/$defs/ActiveCurrencyAndAmount"
        },
        "remaining_to_be_confirmed_amount": {
          "$ref": "#/$defs/ActiveCurrencyAndAmount"
        },
        "previously_confirmed_amount": {
          "$ref": "#/$defs/ActiveCurrencyAndAmount"
        },
        "purpose": {
          "$ref": "#/$defs/Max4Text"
        },
        "from": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "to": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "instructing_reimbursement_agent": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "previous_instructing_agent1": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "previous_instructing_agent2": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "previous_instructing_agent3": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "intermediary_agent1": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "intermediary_agent2": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "intermediary_agent3": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "debtor": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "debtor_account": {
          "$ref": "#/$defs/AccountIdentification58Choice"
        },
        "debtor_agent": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "creditor_agent": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "creditor": {
          "$ref": "#/$defs/BICFIDec2014Identifier"
        },
        "creditor_account": {
          "$ref": "#/$defs/AccountIdentification58Choice"
        },
        "underlying_customer_credit_transfer": {
          "$ref": "#/$defs/CreditTransferTransaction59"
        },
        "sender_acknowledgement_receipt_date_time": {
          "$ref": "#/$defs/ISONormalisedDateTime"
        },
        "received_date_time": {
          "$ref": "#/$defs/ISONormalisedDateTime"
        },
        "update_payment": {
          "$ref": "#/$defs/Max50Text"
        },
        "duplicate_message_reference": {
          "$ref": "#/$defs/Max50Text"
        },
        "copied_business_service": {
          "$ref": "#/$defs/Max3Text"
        },
        "event_creation_date_time": {
          "$ref": "#/$defs/ISONormalisedDateTime"
        }
      },
      "required": [
        "network_reference",
        "message_name_identification",
        "tracker_event_type",
        "valid",
        "from",
        "to",
        "sender_acknowledgement_receipt_date_time",
        "event_creation_date_time"
      ]
    },
    "PendingPaymentCancellationReason1Code": {
      "type": "string",
      "description": "Provides the reason as to why a payment cancellation response is pending.\n*`INDM`-Cancellation indemnity is required. \r\n\n*`PTNA`-The cancellation has been forwarded to the next agent in the payment chain.\n*`RQDA`-Creditor authorisation is required to return the payment.",
      "enum": [
        "INDM",
        "PTNA",
        "RQDA"
      ]
    },
    "PendingPaymentCancellationReason2Code": {
      "type": "string",
      "description": "Provides the reason as to why a payment cancellation request is pending.\n*`INDM`-Cancellation indemnity is required. \r\n",
      "enum": [
        "INDM"
      ]
    },
    "RestrictedFINXMax16Text": {
      "type": "string",
      "description": "Specifies a character string with a maximum length of 16 characters. It has a pattern that disables the use of characters that is not part of the character set X, that is, that is not a-z A-Z / - ? : ( ) . , ‘ + , and disable the use of slash \"/\" at the beginning and end of line and double slash \"//\" within the line.",
      "minLength": 1,
      "maxLength": 16,
      "pattern": "^([0-9a-zA-Z\\-\\?:\\(\\)\\.,'\\+ ]([0-9a-zA-Z\\-\\?:\\(\\)\\.,'\\+ ]*(/[0-9a-zA-Z\\-\\?:\\(\\)\\.,'\\+ ])?)*)$"
    },
    "RestrictedFINXMax350Text": {
      "type": "string",
      "description": "Specifies a character string with a maximum length of 350 characters limited to character set X, that is, a-z A-Z / - ? : ( ) . , ‘ + .",
      "minLength": 1,
      "maxLength": 350,
      "pattern": "^[0-9a-zA-Z/\\-\\?:\\(\\)\\.\\n\\r,'\\+ ]{1,350}$"
    },
    "RestrictedFINXMax35Text": {
      "type": "string",
      "description": "Specifies a character string with a maximum length of 35 characters limited to character set X, that is, a-z A-Z / - ? : ( ) . , ‘ + .",
      "minLength": 1,
      "maxLength": 35,
      "pattern": "^[0-9a-zA-Z/\\-\\?:\\(\\)\\.,'\\+ ]{1,35}$"
    },
    "SettlementMethod1Code": {
      "type": "string",
      "description": "Specifies the method used to settle the credit transfer instruction.\n*`INDA`-Settlement is done by the agent instructed to execute a payment instruction.\n*`INGA`-Settlement is done by the agent instructing and forwarding the payment to the next party in the payment chain.\n*`COVE`-Settlement is done through a cover payment.\n*`CLRG`-Settlement is done through a payment clearing system.",
      "enum": [
        "INDA",
        "INGA",
        "COVE",
        "CLRG"
      ]
    },
    "TrackerEventType4Code": {
      "type": "string",
      "description": "Indicates the type of payment event.\n*`COPT`-Indicates a cover payment.\n*`FTCA`-Indicates a cancellation request related to a financial institution credit transfer payment\n*`FTTS`-Indicates the tracking status of a cancellation request related to a financial institution credit transfer payment.\n*`FTCR`-Indicates a cancellation response related to a financial institution credit transfer payment.\n*`RCTP`-Indicates a return of a Customer Credit Transfer Payment.\n*`RCOS`-Indicates a status update related to a return of a Cover Payment.\n*`RCTS`-Indicates a status update related to a return of a Customer Credit Transfer Payment.\n*`RCFS`-Indicates a status update related to a return of a cover of a Financial Institution Credit Transfer Payment.\n*`RFTP`-Indicates a return of a Financial Institution Credit Transfer Payment.\n*`CFPT`-Indicates a cover of a Financial Institution Credit Transfer Payment.\n*`CTCA`-Indicates a cancellation request related to a credit transfer payment.\n*`CTTS`-Indicates the tracking status of a cancellation request related to a credit transfer payment.\n*`CTCR`-Indicates a cancellation response related to a credit transfer payment.\n*`CTPT`-Indicates a customer credit transfer payment.\n*`FTPT`-Indicates a Financial Institution Credit Transfer Payment.\n*`RCFP`-Indicates a return of a cover of a Financial Institution Credit Transfer Payment.\n*`RCOP`-Indicates a return of a Cover Payment.\n*`CFSU`-Indicates a status update related to a cover of a Financial Institution Credit Transfer Payment.\n*`COSU`-Indicates a cover payment status update.\n*`CTSU`-Indicates a customer credit transfer payment status update.\n*`FTSU`-Indicates a Financial Institution Credit Transfer Payment status update.\n*`RFTS`-Indicates a status update related to a return of a Financial Institution Credit Transfer Payment.",
      "enum": [
        "COPT",
        "FTCA",
        "FTTS",
        "FTCR",
        "RCTP",
        "RCOS",
        "RCTS",
        "RCFS",
        "RFTP",
        "CFPT",
        "CTCA",
        "CTTS",
        "CTCR",
        "CTPT",
        "FTPT",
        "RCFP",
        "RCOP",
        "CFSU",
        "COSU",
        "CTSU",
        "FTSU",
        "RFTS"
      ]
    },
    "TrackerPaymentStatusReason3Code": {
      "type": "string",
      "description": "Provides reason for reject/return.\n*`AM06`-Below limit.\n*`RC01`-Bank identifier code specified in the message has an incorrect format (formerly IncorrectFormatForRoutingCode).\n*`AC06`-Account specified is blocked, prohibiting posting of transactions against it.\n*`AM07`-Amount specified in message has been blocked by regulatory authorities.\n*`AC04`-Account number specified has been closed on the bank of account's books.\n*`AC07`-Creditor account number closed.\n*`G004`-Credit to the creditor's account is pending as status Originator is waiting for funds provided via a cover.\n*`DUPL`-Payment is a duplicate of another payment.\n*`ERIN`-The Extended Remittance Information (ERI) option is not supported.\n*`FOCR`-Return following a cancellation request.\n*`FR01`-Returned as a result of fraud.\n*`BE01`-Identification of end customer is not consistent with associated account number. (formerly CreditorConsistency).\n*`AC01`-Account number is invalid or missing\n*`AGNT`-Agent in the payment workflow is incorrect.\n*`CURR`-Currency of the payment is incorrect.\n*`AM04`-Amount of funds available to cover specified message amount is insufficient.\n*`FF06`-Category Purpose code is missing or invalid.\n*`RC08`-Routing code not valid for local clearing.\n*`RC04`-Creditor bank identifier is invalid or missing.\n*`AC02`-Debtor account number invalid or missing\r\n\n*`AC13`-Debtor account type is missing or invalid.\n*`RR11`-Invalid or missing identification of a bank proprietary service.\n*`RC03`-Debtor bank identifier is invalid or missing\n*`RC11`-Intermediary Agent is invalid or missing.\n*`FF05`-Local Instrument code is missing or invalid.\n*`RR12`-Invalid or missing identification required within a particular country or payment type.\n*`FF03`-Payment Type Information is missing or invalid. Generic usage if cannot specify Service Level or Local Instrument code.\n*`FF07`-Purpose is missing or invalid.\n*`FF04`-Service Level code is missing or invalid.\n*`RR09`-Structured creditor reference invalid or missing.\n*`BE04`-Specification of creditor's address, which is required for payment, is missing/not correct (formerly IncorrectCreditorAddress).\n*`RR03`-Specification of the creditor's name and/or address needed for regulatory requirements is insufficient or missing.\n*`RR01`-Specification of the debtor’s account or unique identification needed for reasons of regulatory requirements is insufficient or missing\n*`BE07`-Specification of debtor's address, which is required for payment, is missing/not correct.\n*`RR02`-Specification of the debtor’s name and/or address needed for regulatory requirements is insufficient or missing.\r\n\n*`NOAS`-Failed to contact beneficiary.\n*`AM02`-Specific transaction/message amount is greater than allowed maximum.\n*`AM03`-Specific message amount is an non processable currency outside of existing agreement.\n*`NOCM`-Customer account is not compliant with regulatory requirements, for example FICA (in South Africa) or any other regulatory requirements which render an account inactive for certain processing.\n*`MS03`-Reason has not been specified by agent.\n*`MS02`-Reason has not been specified by end customer.\n*`RR05`-Regulatory or Central Bank Reporting information missing, incomplete or invalid.\n*`RR04`-Regulatory Reason \n*`RR07`-Remittance information structure does not comply with rules for payment type.\n*`RR08`-Remittance information truncated to comply with rules for payment type.\n*`CUST`-At request of creditor.\n*`RR06`-Tax information missing, incomplete or invalid.\n*`UPAY`-Payment is not justified.\n*`BE05`-Party who initiated the message is not recognised by the end customer.\n*`AM09`-Amount received is not the amount agreed or expected.\n*`RUTA`-Return following investigation request and no remediation possible.",
      "enum": [
        "AM06",
        "RC01",
        "AC06",
        "AM07",
        "AC04",
        "AC07",
        "G004",
        "DUPL",
        "ERIN",
        "FOCR",
        "FR01",
        "BE01",
        "AC01",
        "AGNT",
        "CURR",
        "AM04",
        "FF06",
        "RC08",
        "RC04",
        "AC02",
        "AC13",
        "RR11",
        "RC03",
        "RC11",
        "FF05",
        "RR12",
        "FF03",
        "FF07",
        "FF04",
        "RR09",
        "BE04",
        "RR03",
        "RR01",
        "BE07",
        "RR02",
        "NOAS",
        "AM02",
        "AM03",
        "NOCM",
        "MS03",
        "MS02",
        "RR05",
        "RR04",
        "RR07",
        "RR08",
        "CUST",
        "RR06",
        "UPAY",
        "BE05",
        "AM09",
        "RUTA"
      ]
    },
    "TransactionIndividualStatus5Code": {
      "type": "string",
      "description": "Specifies the status of a single payment transaction.\n*`RJCT`-Payment initiation or individual transaction included in the payment initiation has been rejected.\n*`ACSP`-All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution.\n*`ACCC`-Settlement on the creditor's account has been completed. ",
      "enum": [
        "RJCT",
        "ACSP",
        "ACCC"
      ]
    },
    "TransactionIndividualStatusReason1Code": {
      "type": "string",
      "description": "Contains the reason for the status of a payment transaction.\n*`G002`-In a FIToFI Customer Credit Transfer: Credit to the creditor’s account may not be confirmed same day. Update will follow from the Status Originator.\r\nIn a Financial Institution Credit Transfer with cover: Debit/credit to nostro account may not be confirmed same day or Financial Institution Credit Transfer may not be transferred same day. Update will follow from the Status Originator.\n*`G003`-In a FIToFI Customer Credit Transfer: Credit to creditor’s account is pending receipt of required documents. The Status Originator has requested creditor to provide additional documentation. Update will follow from the Status Originator. \r\nIn a Financial Institution Credit Transfer with cover: Status Originator has requested a previous Agent to provide additional information/correct information. Update will follow from the Status Originator.\n*`G004`-In a FIToFI Customer Credit Transfer: Credit to the creditor’s account is pending, status Originator is waiting for funds provided via a cover. Update will follow from the Status Originator.\n*`G006`-Payment has been delivered to creditor agent without service level.\n*`G005`-Payment has been delivered to creditor agent with service level.\n*`G001`-In an FI To FI Customer Credit Transfer: The Status Originator transferred the payment to the next Agent or to a Market Infrastructure. The payment transfer is not tracked. No further updates will follow from the Status Originator.\r\n\r\nIn a Financial Institution Credit Transfer with cover: The Status Originator performed the account booking and transferred the cover transaction to the next Reimbursement Agent or to a Market Infrastructure. The payment transfer is not tracked. No further updates will follow from the Status Originator.\n*`G000`-In an FI To FI Customer Credit Transfer: The Status Originator transferred the payment to the next Agent or to a Market Infrastructure. The payment transfer is tracked. No further updates will follow from the Status Originator.\r\n\r\nIn a Financial Institution Credit Transfer with cover: The Status Originator performed the account booking and transferred the cover transaction to the next Reimbursement Agent or to a Market Infrastructure. The payment transfer is tracked. No further updates will follow from the Status Originator.",
      "enum": [
        "G002",
        "G003",
        "G004",
        "G006",
        "G005",
        "G001",
        "G000"
      ]
    },
    "TrueFalseIndicator": {
      "type": "boolean",
      "description": "A flag indicating a True or False value."
    },
    "UUIDv4Identifier": {
      "type": "string",
      "description": "Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 \"Universally Unique IDentifier (UUID) URN Namespace\".",
      "pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$"
    }
  }
}